扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
首先这样的作法是没有意义的,因为当函数返回之后,函数原始空间中的数组和变量是临时的,都会被自动清除和释放。如果需要通过函数将改变的结果传回,可以使用指针。 void shuru(int* p,int a[]){ *p = 123; int b[10]={1,2,3,4,5,4,6,7}; for (int i=0;i9;i++) a[i]=b[i] } void main(){ int b, a[10] ; shuru(b,a); printf("%d",b); for(int i=0;i10;i++){ printf("%d",a[i]); } }
成都创新互联是一家企业级云计算解决方案提供商,超15年IDC数据中心运营经验。主营GPU显卡服务器,站群服务器,成都二枢机房,海外高防服务器,大带宽服务器,动态拨号VPS,海外云手机,海外云服务器,海外服务器租用托管等。
#includestdio.h
#define SIZE 3
#define SI 5
void store(float ar[], int n);
void showarr2(int rows,int cols,float ar[][SI]); //这里rows,cols不是常量,不能放在数组里定义长度
int main(void)
{
int b,a;
float max[SIZE][SI];
int q,w;
for(q=0;qSIZE;q++)
{
printf("第 %d 行输入%d个数:\n ",q+1 ,SI);
store(max[q],SI);
}
printf("数组内容:\n");
showarr2(SIZE,SI,max);
}
void store(float ar[], int n)
{
int i;
for(i=0;in;i++)
{
printf("请输入第%d个数字:\n",i+1);
scanf("%f",ar[i]);
}
}
void showarr2(int rows,int cols ,float ar[][SI])
{
int i,k;
for(i=0;irows;i++)
{
for(k=0;kcols;k++)
printf("%.1f ",ar[i][k]); //这里是i和k哦
printf("\n");
}
}
1、新建一个数组作为参数项目,如图所示:
2、添加一个array.c文件,如图所示:
3、包含stdio.h和stdlib.h头文件,如图所示:
4、输入main函数主体及返回值,如图所示:
5、定义一个数组arr,如图所示:
6、定义一个function函数,如图所示:
7、将数组作为参数传递给function函数,如图所示:
8、运行程序,输出结果,如图所示:
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流