运算符的优先级确定表达式中项的组合,这会影响到一个表达式如何计算,某些运算符比其他运算符有更高的优先级,例如乘除优先于加减
下表将按运算符优先级从高到低列出各个运算符,具有较高优先级的运算符出现在表格的上面,具有较低优先级的运算符出现在表格的下面,在表达式中,较高优先级的运算符会被优先计算
类别 | 运算符 | 结合性 |
后缀 | ()[]->.++-- | 从左到右 |
一元 | +-!~++--(type)*&sizeof | 从右到左 |
乘除 | */% | 从左到右 |
加减 | +- | 从左到右 |
移位 | <<>> | 从左到右 |
关系 | <<=>>= | 从左到右 |
相等 | ==!= | 从左到右 |
位和AND | & | 从左到右 |
位异或XOR | ^ | 从左到右 |
位或OR | | | 从左到右 |
逻辑与AND | && | 从左到右 |
逻辑或OR | || | 从左到右 |
条件 | ?: | 从右到左 |
赋值 | =+=-=*=/=%=<<=>>=&=^=|= | 从右到左 |
逗号 | , | 从左到右 |