八大分类:
括号 > 一元运算 > 二元算术运算 > 比较运算 > 位运算 > 逻辑运算 > 条件运算 > 赋值
分类 | 级别 | 运算符 | 说明 | 结合性 |
---|---|---|---|---|
括号 | 1 | () [ ] -> . | 括号、数组、结构成员访问 | 从左往右 |
一元运算 | 2 | ! ~ ++ -- + - * & (type) sizeof | 一元操作 | 从右往左 |
二元运算 | 3 | * / % | 乘法、除法、求余 | 从左往右 |
4 | + - | 加法、减法 | 从左往右 | |
5 | << >> | 位操作(左移、右移) | 从左往右 | |
比较运算 | 6 | < <= > >= | 大于、大于等于、小于、小于等于 | 从左往右 |
7 | == != | 等于、不等于 | 从左往右 | |
位运算 | 8 | & | 与 | 从左往右 |
9 | ^ | 异或 | 从左往右 | |
10 | | | 或 | 从左往右 | |
逻辑运算 | 11 | && | 与 | 从左往右 |
12 | || | 或 | 从左往右 | |
条件运算 | 13 | ?: | 条件判断 | 从右往左 |
赋值 | 14 | = += -= *= /= %= &= | 运算后赋值1 | 从右往左 |
15 | ^= |= <<= >>= | 运算后赋值(位运算) | 从右往左 |
说明:
1. 其实还有第16级别 逗号,没人会搞错,不再赘述。
2. 因为结构体本身是花括号 { },为了便于记忆,所以它的取值运算 也统称为括号类。
特别注意:逻辑运算中 && 比 || 高一个级别。
今日先统计优先级,下周详解各个运算符说明