C语言:运算符优先级
一、优先级(常使用的运算符)
见表格
二、注意
总体原则:算术运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符
同一级别下的运算符的运算次序由表达式的结合方向决定
运算符 | 注释 | 级别 |
( ) | 圆括号 | 1 |
[ ] | 数组下标 | 1 |
后置++ | 后置++ | 2 |
后置-- | 后置-- | 2 |
前置++ | 前置++ | 3 |
前置-- | 前置-- | 3 |
+ | 加号 | 4(算术运算符) |
- | 减号 | 4(算术运算符) |
* | 乘号 | 4(算术运算符) |
/ | 除号 | 4(算术运算符) |
% | 取模 | 4(算术运算符) |
<< | 左移 | 4(算术运算符) |
>> | 右移 | 4(算术运算符) |
> | 大于 | 5(关系运算符) |
>= | 大于等于 | 5(关系运算符) |
< | 小于 | 5(关系运算符) |
<= | 小于等于 | 5(关系运算符) |
== | 等于 | 5(关系运算符) |
!= | 不等于 | 5(关系运算符) |
& | 按位与 | 6(逻辑运算符) |
| | 按位或 | 6(逻辑运算符) |
^ | 按位异或 | 6(逻辑运算符) |
&& | 逻辑与 | 6(逻辑运算符) |
|| | 逻辑或 | 6(逻辑运算符) |
= | 赋值 | 7(赋值运算符) |