本帖最后由 帅飞 于 2014-5-3 06:29 编辑
a=0,b=3
a=b++ —————————————————a=3,b=4
a=b++ + b++ ——————————————a=7, b=5
a=b++ + b++ + b-- ———————————a=12, b=4
a=b++ + b++ + b-- - --b —————————a=9, b=3
a=b++ + b-- - --b ————————————a=5, b=2
a=b-- - --b ———————————————a=2, b=1
这些结果都是本人亲测,由此可见:
1、不论是b++,++b,还是b-- , --b,只要出现自运算,有一次算一次,在前一次的基础上做加减。
2、a=b(3)++ + b(4)++ =7 第一个b++在加法运算时其在内存中的值为3,第二个b++应为做一次自加运算其值为4。
a=b(3)++ + b(4)++ + b(5)-- =12 x++和x--在加减运算中,后一次自运算作为加减数的值应为前一次自运算的值。
a=b(3)++ + b(4)++ + b(5)-- - --b(3) =9 --b中的b值应为前一次运算的结果4,但要先自运算再进行加减运算,值为3。
a=b(3)++ +b(4)-- - --b(2) =5 --b中的b值为前一个b--自运算的结果3,做加减运算前应先进行自运算,值为2.
a=b(3)-- - --b(1) =2
【括号里的值都是作为加减运算在内存中的值】
|