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://pwwzsj.com/article/ddssdeg.html