关于函数形参和实参关系的理解

来源:互联网 发布:19楼网络股份有限公司 编辑:程序博客网 时间:2024/05/23 00:04

函数:void fun(int a);
调用:fun(b);
在调用子函数时,形参在非引用的情况下(fun(int &a) ),是通过拷贝实参的值(a = b)来使用的,而不是直接使用实参的值,形参的值的改变,不会影响到实参。

普通变量:
函数:void fun(int a);
调用:fun(b); //可以看作,fun(a = b); a和b为两个不同的变量

指针:
函数:void fun(int *a);
调用:fun(&b); //fun(a=&b); 指针a获得了普通变量b的地址,通过对a地址的取值(*a)可以操作改变b的值,但如果直接对a操作,改变是a存放的地址,对b没有任何影响。

总结:
形参的设置:改变普通变量的值,使用一级指针
改变一级指针的值,使用二级指针
以此类推。

原创粉丝点击