1.s+=a++等价于 s=s+a++;
等价于 s=s+a; a=a+1;
意思是: s自增a值以后,a再自增1。
2.要弄清楚表达式的具体含义,必须知道运算符运算的先后顺序,然后分步进行解释。
以下是运算符的优先级别表:
是s=s+a++的意思,其中a++是a=a+1的意思,但++在a后面表示后加加,是整个表达式运算结束后才执行a=a+1
等价于
s += a;
a = a + 1;
+= 为 加后赋值
++在变量后面是先使用变量, 然后再自加
如果在前面 就是先自加再使用.
这个是执行顺序的问题(++, -- 都是), 和优先级没有关系
s=s+a++
其中发表达式a++的值是a,在语句执行之后a自加1
这里相当于2句
s += a; // 这里相当于 s = s + a;
a++;