一、算术操作符
+ - * / %
注:1、除了%操作符之外,其他几个操作符均可以用于整数和浮点数。
2、对于/操作符,如果两个操作数都是整数,则执行整数除法;若有一个操作数为浮点数,则执行浮点数除法
例如:3/2=1 3/2.0=1.5
二、移位操作符
1、左移操作符 <<
位移规则:左边丢弃,右边补零。
2、右移操作符 >>
a、逻辑右移:左边补零,右边丢弃。
b、算术右移:左边补该数原符号位,右边丢弃。
注:1、操作数在位移过程中,自身值不发生改变。
2、除二相当于右移,乘二相当于左移。
3、在位移操作中,不要移动负数位,这是标准未定义的。
三、位操作符
& 按位与,
| 按位或
^ 按位异或
注:位操作符的操作数必须输整数。
四、赋值操作符
一般不要连等,这样不易阅读理解。
五、复合操作符
+= -= *= /= %= >>= <<= &= |=
六、单目操作符
! 逻辑反操作
- 负值
+ 正值
& 取地址
sizeof 操作数的类型长度 // sizeof是操作符,不是函数
~ 对一个二进制数进行按位取反
-- 前置、后置--
++ 前置、后置++
(类型) 强制类型转换
七、关系操作符
>
>=
<
<=
!=
== // 双等是比较,单等是赋值
八、逻辑操作符
&& 逻辑与
|| 逻辑或
注意区分逻辑与和按位与,逻辑或和按位或
九、条件操作符
exp1 ?exp2 :exp3
例如:a>b?a:b a>b成立 ,取a,否则取b
十、逗号表达式
exp1,exp2,exp3,……
逗号表达式从左往右依次执行,整个表达式结果以最后一个表达式为准。