运算符号
比特右移(>>)运算符可以是算术(左端补最高有效位)或是逻辑(左端补 0)位移。例如,将 11100011 右移 3 比特,算术右移后成为 11111100,逻辑右移则为 00011100。因算术比特右移较适于处理带负号整数,所以几乎所有的编译器都是算术比特右移。
运算符的优先级从高到低大致是:单目运算符、算术运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符(=)和逗号运算符。
()、 []、 -> 、 .、!、 ++、 -- 圆括号、方括号、指针、成员、逻辑非、自加、自减
++ 、 -- 、 * 、 & 、 ~ 、! 单目运算符
+、 - 、 sizeof、(cast)
* 、 / 、% 算术运算符
+ 、 - 算术运算符
<< 、 >> 位运算符
< 、 <= 、 > 、 >= 关系运算符
== 、!= 关系运算符号
& 位与
^ 位异或
| 位或
&& 逻辑与
|| 逻辑或
? 、: 条件运算符
/= 、%= 、 &= 、 |= 、 ^= 赋值运算符
= 、 += 、 -= 、 *= 、
, 顺序运算符
|
|