C语言函数调用时为值传递,实参赋值给形参,形参值改变不会影响实参(原理:两个参数地址不同),若要函数改变实参值,应当传递实参的地址,参考以下实例。
代码展示:
#include <stdio.h>
void change(int *j){*j=5;printf("j consist:%p\n",j);
}int main(){int i=10;printf("before change i=%d\n",i);change(&i);printf("after change i=%d\n",i);printf("i address :%p\n",&i);
}