很多人遇到"++“、”–"就会晕了,这一下看到这么多加号是不是就更晕了。
如果a=2;
那么a+++++a=?
int b = 0;
int a = 2;
b = a+++++a;
- 1
- 2
- 3
这种情况下b=什么
我们先拆解一下:b = a++ + ++a;
这样是不是就清楚一点了
这里除了++运算,还需要考虑运算符的优先级"++“的优先级是比”+“高的,也就是先运算”++"
关于优先级,可以去看C语言运算符优先级表详解_Eliauk1234的博客-CSDN博客
a++是后++,也就是先运算后++,就是在这一句语句执行后才会+1,所以他不会影响这个值,所以先不看它。
++a是前++,a要先+1在参与运算,这个时候a = 3。
注意哈,是a = 3
所以这个运算就变成了b = 3 + 3;
所以b = 6
这个时候a已经变成4了,a = 4;