C 运算符优先级与结合性查询表
运算符优先级与结合性查询表:
优先级 | 运算符 | 含义 | 要求运算对象的个数 |
结合方向 |
1 | ( ) [ ] -> . |
小括号 中括号,下标运算符 指向结构体成员运算符 结构体成员运算符 |
自左至右 |
|
2 | ! ~ ++ __ -(负号) (类型) * & sizeof |
逻辑非运算符 按位取反运算符 自增运算符 自减运算符 负号运算符 类型转换运算符 指针运算符 地址与运算符 长度运算符 |
1 (单目运算符) |
自右至左 |
3 | * / % |
乘法运算符 除法运算符 求余运算符 |
2 (双目运算符) |
自左至右 |
4 | + - |
加法运算符 减法运算符 |
2 (双目运算符) |
自左至右 |
5 | << >> |
左移运算符 右移运算符 |
2 (双目运算符) |
自左至右 |
6 | < <= > >= | 关系运算符 | 2 (双目运算符) |
自左至右 |
7 | == != |
等于运算符 不等于运算符 |
2 (双目运算符) |
自左至右 |
8 |
& |
按位与运算符 |
2 (双目运算符) |
自左至右 |
9 |
^ |
按位异或运算符 |
2 (双目运算符) |
自左至右 |
10 |
| |
按位或运算符 |
2 (双目运算符) |
自左至右 |
11 |
&& |
逻辑与运算符 |
2 (双目运算符) |
自左至右 |
12 |
|| |
逻辑或运算符 |
2 (双目运算符) |
自左至右 |
13 |
? : |
条件运算符 |
3 (三目运算符) |
自右至左 |
14 | = += -= *= /= %= >>= <<= &= ^= |= |
赋值运算符 |
2 (双目运算符) |
自右至左 |
15 | , | 逗号运算符 (顺序求值运算符) |
自左至右 |
不要停留在理论规则上面,快动起来吧!
(通过游戏模式学习与训练,需要在电脑上运行)