C语言的运算符:
| 优先级 | 运算符 | 含义 | 要求运算对象的个数 | 结合方向 |
|
| 1 | ( ) | 圆括号 |
| 自左至右 |
|
| [ ] | 下标运算符 |
| |||
| -> | 指向结构体成员运算符 |
| |||
| . | 结构体成员运算符 |
| |||
| 2 | ! | 逻辑非运算符 | 1 | 自右至左 |
|
~ | 按位取反运算符 | |||||
++ | 自增运算符 | |||||
-- | 自减运算符 | |||||
- | 负号运算符 | |||||
(类型) | 类型转换运算符 | |||||
* | 指针运算符 | |||||
& | 地址与运算符 | |||||
sizeof | 长度运算符 | |||||
| 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 | , | 逗号运算符 |
|
|