
这里a-=++a不应该等于a=a-(++a)吗?++a等于1,a=0,那结果不应该是等于-1吗? 为什么会等于1-1=0呢?难道++a先加1赋值给了a,表达式左边的a第二个a同时也被赋值成了a?吗?
++a先执行,无论a执行后会是几,接着运行a-=a,相当于a= a-a,那么a肯定是0,所以c就是0
c = (a-=++a);
a = 0 所以++a 等于1,也就是说此时a = 1,然后a-= 1 此时a = 0,所以c = 0
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>>
https://vip.csdn.net/askvip?utm_source=1146287632