请看下面的代码片段:
int a = 10, b;
b = (a) + (++a); //2
printf("b = %d\n", b);
输出:
b = 22
在语句 2 中,有 4 个不同的运算符。其中()
优先级最高。由于()
运算符的关联性是从左到右,为什么b = 22
而不是21
?
$ gcc --version
gcc (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3