穆男神
2015-05-17 21:28
那么就会优先运行a++,它返回3,然后a变成4.然后我们再算乘除,再算加减。难道不应该这么算吗?
然后 计算过程 4+b%4-b/4+4*b-3=4+0-1+16-3=16
刚刚百度了一下http://zhidao.baidu.com/link?url=bgO84pNcVh1qezZHhl8efKjNwsP9T3pJULUr05NY3y0h_o11xNegFU4F_1tVtlvRtbSZCUx8r9HgULjEn-Nxi_这个解释可以
a++在这个语句中a的值是不变的到下一个语句才会改a的值
a++的优先级应该和加减乘除四则运算相同
额不小心看错问题了,a++的优先级不是最高的这个语句的计算还是按照从左到右的顺序来的
所以a++的值应该为3
a++分解开写是两步(a++)=a,a=a+1;
++a分解开是a=a+1,(++a)=a;
C语言入门
926869 学习 · 21176 问题
相似问题