这道题的答案是什么,为什么呢?不是很懂

voidfun(int*a,intb){*a=2;b=5;}main(){inta=3,b=7;fun(&a,b);printf("%d%d\n",a,b);}... void fun(int *a,int b)
{ *a=2; b=5; }
main()
{ int a=3, b=7;
fun(&a,b);
printf("%d%d\n", a,b); }
展开
 我来答
jackal56
2013-02-18 · TA获得超过304个赞
知道小有建树答主
回答量:279
采纳率:0%
帮助的人:272万
展开全部
答案应该是 2和 7吧
前面是传址,后面是传值
传址引用在函数内可以改变原有的值,但是传值引用在调用函数内不会改变其值

你可以想象一下,你有一张纸条(代码A)上面写上了 3,然后传递给另一个人,他涂掉3 写上2,传回来,你看到A上的值是2
但是你有一张纸条A写上7,然后用另一张纸条B写上7,传给另一个人,另一个人把B上的数字改成了5,但是你手上的A纸条还是7
wang_xiang8023
2013-02-18 · TA获得超过125个赞
知道答主
回答量:60
采纳率:0%
帮助的人:30.9万
展开全部
输出的是:27,函数中的形参是不可能改变实参的例如b,而a的形参能够改变实参,主要是利用指针的改变。应该是这样的,好久不用C了,你可以参看谭浩强的那本书,讲的很到位,谢谢。愿你成功。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式