p=(++j)+(++j)+(++j)是如何运算的

p=(++j)+(++j)+(++j);

       首先,理清什么是右结合原则,还有运算的优先级问题。

       根据有结合原则,首先元素的是三个括号中的++j,先从最后一个括号开始,++j这是先自加,后运算,第一次运算后j=6,第二次运算后j=7,第三次运算后j=8. 括号中的表达式都运算完成后,再算两个+号,将三个括号中的结果相加,想想j有可能是三个不同的值吗,这里不是函数,是不会搞什么副本那玩意的,跟(j++)+(j++)+(j++)可以看出j+j+j一样, (++j)+(++j)+(++j)可以简略成j+j+j,亲们要最终要加的是j,而不是什么++,懂不?结果无疑就是3j=24

  

  编程的过程中经常会遇到这种问题,希望大家可以举一反三

posted @ 2013-05-11 16:05  randroid  阅读(981)  评论(0编辑  收藏  举报