C语言形参和实参,传值调用和引用调用的区别

 我来答
J_V
2017-04-21 · TA获得超过646个赞
知道小有建树答主
回答量:230
采纳率:0%
帮助的人:136万
展开全部
形参与实参:
int a(int x){//这个x就是形参,就是你定义的变量名称
......
}
int main(){
int y=5;
a(y);//具体的变量y就是实参
a(z);//z也是实参,就是实实在在的值
}
传值调用和引用调用:
二者的区别为,当传引用时,实际传到函数中的形参,是实际参数的一个引用,而不是仅传递值到函数中。具体的表现有以下几条:
1、传引用时,形参和实参是同一个变量,即使用相同的内存空间,二者有相同的地址。而传值时二者地址不同;
2、传引用时,由于没有新建变量,所以对于类对象参数,不会产生构造和析构。而如果是传值调用,调用时会进行构造,退出函数时会进行析构;
3、由于传引用使用的是原本实参的地址,所以对引用参数值的修改,会在退出函数后体现在主调函数中,而传值调用对参数的修改不会影响到主调函数。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式