a += a-= a*a

int a = 3;

a += a-= a*a;

最终a的值是多少?


这要分语言了。

1)在c语言中,结果是-12。原因是先算a*a(结果为9,此时a的值没变,还是3);然后算 a-=a*a,等效于 a = a - 9;(结果为-6,因为赋值符号,此时a的值为-6,发生了改变);最后算a = a + a ,结果为-12

2)在JAVA中,结果为-3。好像中间的那次赋值对它没影响,不知道为什么

猜你喜欢

转载自blog.csdn.net/qq_18433441/article/details/78275385
AA
今日推荐