问答详情
源自:2-13 编程练习

我记得++a和a++是有区别的

a=5,b=2

sum = ( (++a) + 3 ) / (2 - (--b) ) * 3;

这里不是得出的答案是a=5,b=2,sum=27吗?我记得这里好像是a,b先不变,然后再自增(减)算sum的值!


提问者:菠萝丶炸 2015-12-22 11:38

个回答

  • 红颜未知己
    2015-12-22 11:54:46
    已采纳

    你要记得++a先运算后赋值,a++先赋值后运算

  • echo_kinchao
    2015-12-22 13:37:23

    一个是不管三七二十一先加上  一个是 弄完再加

  • Caballarii
    2015-12-22 11:46:50

    因为你加了括号,所以无论如何都是括号里面算完了再算外面的,如果++a不用括号括起来,那么++a和a++的结果确实不一样,但后面的--b不能没括号,因为不支持2--这样的写法

  • lynhao
    2015-12-22 11:42:11

    27没错的,++a是先+1再赋值就是等于6+3;然后同理先减一就是2-1,然后你懂了 (*^__^*)