运算符的分类
项目 | Value |
---|---|
算数运算符 | + - x / % ++ - - |
关系运算符 | > < == >= <= != |
逻辑运算符 | && ∥ ! |
位运算符 | << >> ~ | ^ & |
赋值运算符 | = |
条件运算符 | ?: |
逗号运算符 | , |
指针运算符 | * & |
求字节数运算符 | sizeof |
强制类型转化运算符 | (类型) |
成员运算符 | . - > |
下标运算符 | [ ] |
其他 |
运算符的优先级
项目 | Value |
---|---|
1 | ( ) [ ] -> . |
2 | ! ~ ++ – - (类型) * & sizeof |
3 | * / % |
4 | + - |
5 | << >> |
6 | < <= > >= |
7 | == != |
8 | & |
9 | ^ |
10 | | |
11 | && |
12 | ∥ |
13 | ? : |
14 | = += -= * = /= %= >>= <<= &= ^= |
15 | , |
运算符的结合性
左结合性:同优先级的运算符 从左到右执行。
右结合性:同优先级的运算符 从右到左执行。
1. 算数运算符
(1) 优先次序:
- 第一优先级 *,/,%
- 第二优先级 +,-
(2) 结合性: 左结合性。
注意:
- %只能用于整数。
2. 赋值运算符
“=”
(2) 结合性: 右结合性。
赋值运算符几乎最低级
3. 关系运算符
(1) 优先次序:
第一优先级 <,>,<=,>=
第二优先级 ==,!=
赋值运算符 < 关系运算符 < 算术运算符
(2) 结合性: 左结合性。
4. 逻辑运算符
(1) 优先次序:
第一优先级 !
第二优先级 &&,||
&&,|| < 关系运算符 < !
(2) 结合性: 左结合性。
从左到右的执行过程中,若中途得到结果,则不继续执行。
5. 条件运算符
赋值运算符 < 条件运算符 < 逻辑运算符
6. sizeof运算符
求数据所占的字节数
'\0’算一个字节