1、自加运算符 ++
运算规则:++在变量前,先运算,后取值;反之毅然。
如:int a = 2,b;
b= ++a; //相当于:{a=a+1;b=a;}
b = a++; //相当于:{b=a;a=a+a;}
2、二元运算符 +
运算规则:先求得 + 号两边的表达式的值,再返后两端值相加后的结果。
如:int a = 2, b = 3,c;
c = a +b; //相当于:{2+3;c=5}
c = (a + a) + ( a + b ); //相当于:{2+2,2+3,4+5,c=9}
3、++与+的混合应用
运算规则:++运算符的优先级高于+运算符。
如:int a, m;
m = (++a) + (++a) + (++a);
// 结果为 m = 13
m = (++a) + (++a) + (++a) + (++a);
// 结果为 m = 19
解释如下:
m = (++a) + (++a) + (++a); 相当于:m = ((++a) + (++a)) + (++a);
按从左至右的顺序,两个数相加时,先求得要加的两个数,按照这个原则应为:
m = (4+4) + (++a) // a = 4
= 8 + (++a) //a = 4
= 8 + 5 // a = 5
= 13
同理:m=(++a) + (++a) + (++a) + (++a); 相当于:m=(((++a) + (++a)) + (++a)) + (++a); //a=2
m = (( 4 + 4) + (++a)) + (++a) //a=4
= (8 + 5)+(++a) //a=5
= 13 + 6 //a=6
= 19