C ++中的运算符优先级

运算符优先级确定表达式中术语的分组。运算符的关联性是一种属性,它确定在没有括号的情况下如何将具有相同优先级的运算符分组。这会影响表达式的求值方式。某些运算符具有更高的优先级;例如,乘法运算符的优先级高于加法运算符:

例如x = 7 + 3 * 2; 在这里,x被赋值为13,而不是20,因为运算符*的优先级比+高,因此它首先与3 * 2相乘,然后加到7。

在此,优先级最高的运算符出现在表格的顶部,优先级最低的运算符出现在表格的底部。在表达式中,优先级较高的运算符将首先被评估。


类别      
                 运算符                      
关联性
     后缀      
     ()[]->。++--
 左到右
       一元          
+-!〜++--(type)*&sizeof
右到左
乘性  
* /%
   左到右  
添加剂
+-    
左到右
    转移      
<< >>
左到右
关系型  
<<=>> =
左到右
平等      
==!=
左到右
按位与

左到右
按位异或
^
左到右
按位或
|左到右
逻辑与
&&左到右
逻辑或
||左到右
有条件的
?:右到左
分配
= + =-= * = / =%= >> = << =&= ^ = | =
右到左
         逗号          
  左到右