#include <stdio.h>
int changeData(int data)
{
data = data + 100;
printf(" huanshu zhong address : %p data: %d\n",&data,data);
}
int main()
{
int data = 10;
changeData(data);
printf("main address : %p data: %d\n",&data,data);
}
在这里 changeData(data) 只是一个数值的传递 这两个data 并不是同一个data 他们有不同的地址。
#include <stdio.h>
int changeData(int data[])
{
data[0] = data[0] + 100;
printf(" huanshu z data: %d\n",data[0]);
}
int main()
{
int data[2] = {10,30};
changeData(data);
printf("main data: %d\n",data[0]);
}
#include <stdio.h>
int changeData(int data[]) //这里 不可以是data[0]
{
data[0] = data[0] + 100;
printf(" huanshu z data: %d\n",data[0]); //这个是要把第一个的数输出来
}
int main()
{
int data[2] = {10,30};
changeData(data); / / 这个地方是将数组的首地址传给 changeData
printf("main data: %d\n",data[0]);
}
这里函数所传递的是地址