应该注意到fun函数所调用的三个参数(形参):
n1是直接调用;
n2是指针调用;
n3是数组调用。
下面用fun(a, &b, c) 来说明调用的实质:
直接调用是系统产生一个实参的副本,即把a的值0复制一份给n1,后面对n1的操作如赋值,都不会影响main函数中变量a的值,所以main函数中a的值仍然是0。
指针调用是把实参变量b的地址赋值给形参变量n2,所以对*n2的操作,会影响到实参b的值。
数组调用的本质也是指针调用,他把数组c的首元素的地址赋给n3,当然对n3的元素的操作也会影响c数组相应元素的变化。
有什么问题请留言。
温馨提示:内容为网友见解,仅供参考