结合性:左结合是从左到右依次执行,右结合是从右到左依次执行。
优先级 | 运算符 | 名称或作用 | 运算类型 | 结合方向 | 特点 |
1 | () [] -> . | 小括号运算符 下标运算符 指向结构成员运算符 结构成员运算符 |
| 左结合 |
|
2 | ! ~ ++,-- - (类型) *,& sizeof | 逻辑非运算符 按位取反运算符 自增/减运算符 负号运算符 类型转换运算符 指针/取地址运算符 求类型长度运算符 | 单目运算 | 右结合 |
|
3 | *,/,% | 乘法/除法/求余运算符 | 双目运算、算术运算 | 左结合 | 乘除取余优先于加减 |
4 | +,- | 加法/减法运算符 | 双目运算、算术运算 | 左结合 | |
5 | <<,>> | 左移/右移运算符 | 双目运算、位运算 | 左结合 | 位移低于算术运算 |
6 | <,<=,>,>= | 小于/小于等于/大于/大于等于 | 双目运算、关系运算 | 左结合 | 大小比较优先于等于比较 |
7 | ==,!= | 判等/判不等运算符 | 双目运算 | 左结合 | |
8 | & | 按位与 | 双目运算、位运算 | 左结合 |
|
9 | ^ | 按位异或 | 双目运算、位运算 | 左结合 |
|
10 | | | 按位或 | 双目运算、位运算 | 左结合 |
|
11 | && | 逻辑与 | 双目运算、逻辑运算 | 左结合 | 且的优先级高于或 |
12 | || | 逻辑或 | 双目运算、逻辑运算 | 左结合 | |
13 | ?: | 条件运算符 | 三目运算 | 右结合 |
|
14 | =,+=,-=,*=,/=,%= >>=,<<=,&=,^=,|= | 赋值运算符 | 双目运算 | 右结合 |
|
15 | , | 逗号运算符(顺序求值运算符) |
| 左结合 |
|