一个表达式可以包含多个运算符。在这种情况下,运算符的优先级决定表达式的哪部分被处理为每个运算符的操作数。

推荐:《c语言教程》

如果一个表达式中的两个操作数具有相同的优先级,那么它们的结合律(associativity)决定它们的组合方式是从左到右或是从右到左。

所有 C 语言运算符的优先级和结合律:

优先级运算符结合律
1后缀运算符:[] () · -> ++ --(类型名称){列表}从左到右
2一元运算符:++ -- ! ~ + - * & sizeof_Alignof从右到左
3类型转换运算符:(类型名称)从右到左
4乘除法运算符:* / %从左到右
5加减法运算符:+ -从左到右
6移位运算符:<< >>从左到右
7关系运算符:<<= >>=从左到右
8相等运算符:== !=从左到右
9位运算符 AND:&从左到右
10位运算符 XOR:^从左到右
11位运算符 OR:|从左到右
12逻辑运算符 AND:&&从左到右
13逻辑运算符 OR:||从左到右
14条件运算符:?:从右到左
15赋值运算符:
= += -= *= /= %= &= ^= |=
<<= >>=
从右到左
16逗号运算符:,从左到右

点赞(28)

评论列表共有 0 条评论

立即
投稿
返回
顶部