外观
运算符和优先级
运算符优先级表
| 优先级 | 运算符 | 含义 |
|---|---|---|
| 1 | () | 圆括号 |
| 1 | [] | 下标运算符 |
| 1 | . | 结构体成员运算符 |
| 2 | ! | 逻辑非运算符 |
| 2 | ~ | 按位取反运算符 |
| 2 | ++ | 自增运算符 |
| 2 | -- | 自减运算符 |
| 2 | - | 负号运算符 |
| 2 | (类型) | 类型转换运算符 |
| 2 | * | 地址运算符 |
| 2 | & | 取地址运算符 |
| 2 | sizeof | 长度运算符 |
| 3 | * | 乘法运算符 |
| 3 | / | 除法运算符 |
| 3 | % | 求余运算符 |
| 4 | + | 加法运算符 |
| 4 | - | 减法运算符 |
| 5 | << | 左移运算符 |
| 5 | >> | 右移运算符 |
| 6 | == != >= <= > < | 关系运算符 |
| 7 | & | 按位与运算符 |
| 7 | | | 按位或运算符 |
| 7 | ^ | 按位异或运算符 |
| 8 | && | 逻辑与运算符 |
| 8 | || | 逻辑或运算符 |
| 9 | = | 赋值运算符 |
说明
- 所有2级运算符都是单目运算符,其余都是双目运算符
- 除2、9级运算符外,所有运算的结合方向都是自左至右
- 支持
a=b=c这样的赋值形式
