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


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

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

表中优先级最高的运算符位于顶部,优先级最低的位于底部。在表达式中,优先级较高的运算符将首先计算。

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


更新于:2019年7月30日

3K+ 次浏览

启动您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.