C语言a+=b++==0表示什么意思

 我来答
淡智板环
2019-12-01 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.2万
采纳率:26%
帮助的人:1134万
展开全部
首先,b++表示对b做自加运算,我们用c代替,c=b++;
然后,a+=b++
等于
a+=c,即a=a+c,也就是说“==”之前部分是给a赋值的,我们用d代替,即d=a+c;
最后是一个逻辑判断d==0,也就是判断前面计算出来的a是否等于0.
这里要注意的一个地方是b++,不是++b,也就是说在当前这一次判断的时候b并不自加,而是在当前判断执行完之后才自加1.
比如初始a=1,
b=2,b没有自加,a=a+b=1+2=3,那么这句话这次是在判断“3==0”,下次再判断的时候b才自加变成了2,a=a+b=3+2=5,相当于在判断“5==0”,依次类推即可。
结快恨02
2019-08-16 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:32%
帮助的人:666万
展开全部
先解释一下
+=

++
是什么意思
+=
的意思是
左值和右值相加结果赋值给左值如
a=1;b=2;a+=b;后,a=3;b=2。
++
的意思是变量自加1,如a=1;a++;a的值是2,在c中,++有前置和后置如
++a;a++;,单独使用的时候是没有区别的,都是自加1,在有运算时就有区别了,前置的++是自加后才参与运算,后置的++是参与运算后在自加1。
如题的画,假定a=1,b=2,a+=b++的意思就是b=2先参与a+=b运算a=3,然后b自加1,b=3;如果b++换成前置++b,a+=++b就是b先自加1,b=4,然后参与a+=b运算,a=4。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式