C++中值传递和引用传递的区别

 我来答
pardream941026
2018-03-27 · TA获得超过8216个赞
知道大有可为答主
回答量:4602
采纳率:89%
帮助的人:1330万
展开全部
你要是学过汇编,知道“地址”这个概念,可能会更容易理解之间的区别。
int b = 123;
fun1(b);
fun1 (int a) {//传值
   a = 5;     //调用fun1时,把变量的值复制给了a,所以a,b是两个完全不同的变量
         //修改b,不影响a
}
int b = 123;
fun2(&b);
fun2 (int *a) {//引用(即传递变量的地址)
  *a = 456;    //调用fun2时,传递的是变量b的地址,即a和b指向同一个存储区域
               //所以,任何一个变量发生变化,都会影响到另外一个。
               //*a=456;此时,b的值也变成了456;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式