C++ 运算符优先级和结合性


运算符优先级决定了表达式中各项的组合方式。运算符的结合性是一个属性,它决定了在没有括号的情况下,相同优先级的运算符是如何分组的。这会影响表达式的计算方式。某些运算符的优先级高于其他运算符;例如,乘法运算符的优先级高于加法运算符。

例如,x = 7 + 3 * 2; 这里,x 的值为 13,而不是 20,因为 * 运算符的优先级高于 +,所以它首先计算 3*2,然后加上 7。

这里,优先级最高的运算符出现在表格的顶部,优先级最低的出现在底部。在一个表达式中,优先级高的运算符将首先计算。

类别
运算符
结合性
后缀
() [] -> . ++ - -
从左到右
一元
 + - ! ~ ++ -- (type)* & sizeof
从右到左
乘法
* / %
从左到右
加法
+ -
从左到右
移位
<< >>
从左到右
关系
<  <=  >  >=
从左到右
相等
==  !=
从左到右
按位与
&从左到右
按位异或
^从左到右
按位或
|从左到右
逻辑与
&&从左到右
逻辑或
||从左到右
条件
?:
 从右到左
赋值
 =  +=  -=  *=  /=  %=  >>=  <<=  &=  ^=  |=
从右到左
逗号
,从左到右


更新于:2019年7月30日

3K+ 浏览量

开启你的职业生涯

完成课程获得认证

开始学习
广告