189 8069 5689

c语言函数能改变数组 c语言函数能改变数组的属性吗

C语言如何在函数中修改数组,并且原数组不改变

#include stdio.h

创新互联公司是网站建设技术企业,为成都企业提供专业的成都网站设计、网站制作,网站设计,网站制作,网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制适合企业的网站。十年品质,值得信赖!

int add(int *a)

{

int i = 0;

int sum = 0;

for( i = 0; i  100; i++)

{

sum += (*(a+i))*2;

}

return sum;    

}

int main(){

int a[100]={1,2,3};

//result

printf("The add result is %d.\n",add(a));

//print the array

printf("{");

for(int i = 0; i  100; i++)

printf("%d, ",a[i]);

printf("}");

return 0;

}

sum result is 12.

{1, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }

Press ENTER or type command to continue

c语言如何在子函数中改变主函数数组值?

两种方法.

一:

把a作为参数传递给sss();

int sss(int x)

{x ;

}这样仅仅只是使用a的值,是把a的值复制给x,使x的值等于a,可以在子函数中使用a的数值,但无法改变主函数中a的值.

二,

使用指针.声明一个指针指向a,把a的地址作为参数传递给子函数,那么在子函数中不但可以使用a的值还可以修改主函数中a的值.

c语言在调用函数中改变数组,原数组改变吗

C语言不会复制整个数组,它会要求传入数组名(一个指向数组首地址的const指针),函数中对整数的改变其实就是对实际数组的改变!

写一个函数修改数组中的数据,在主函数中调用它。(C语言)?

#includestdio.h

// 用于修改数组的函数

int change_array(int *num, int count)

{

int i,t;

for(i = 0; i count; i++)

{

t = num[i];

num[i] = t + 1;

}

}

int main()

{

int i, b[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };

// 调用函数

change_array(b, 10);

// 输出结果

for(i = 0; i 10; ++i)

{

printf("%d ", b[i]);

}

}


本文名称:c语言函数能改变数组 c语言函数能改变数组的属性吗
链接分享:http://jkwzsj.com/article/ddssdeg.html

其他资讯