算术操作符
+ | 作用于整数和浮点数; |
- | 作用于整数和浮点数,计算机只能进行加法运算,所以在程序中,a-b相当于a+(-b); |
* | 作用于整数和浮点数; |
/ | 操作数是整数时,执行整数除法;只要有浮点型操作数,就执行浮点数除法; |
% | 两个操作数必须为整数,结果返回的是整除之后的余数。 |
<< | 左移操作符,把操作数转化为二级制的形式时,抛弃最左边的数,最右侧用0补充,相当于原操作数对2的除法运算; |
>> | 右移操作符,有逻辑移位和算术移位两种形式,逻辑移位是左边用0填充,右边丢弃;算术移位是左边用原改值的符号位填充,右边丢弃。 |
!!! 对于移位运算,不能移动负数位。对于负数位的移位,不同的系统,可能会给出不同的结果,有差异性。
& | 按位与,操作数为整数,在二进制的操作数中,两数都为1则结果为1,其他则为0。 |
| | 按位或,操作数为整数,在二进制的操作数中,两个数有1则为1,都为0时结果为0。 |
^ | 按位异或,操作数为整数,在二进制的操作数中,两个数不相同则为1,相同则为0。 |
2 0000 0010
3 0000 0011
2^3 0000 0001
! | 逻辑反操作 |
- | 负值 |
+ | 正值 |
& | 取地址 |
sizeof | 求操作数类型的长度(以字节为单位) |
~ | 对一个数的二级制按位取反 |
-- | i--表示先使用i的值,再对i减1;--i表示先对i减1,再使用i的值 |
++ | i++表示先使用i的值,再对i加1;++i表示先对i加1,再使用i的值 |
* | 间接访问操作符(解引用操作符) |
(类型) | 强制类型转换 |
赋值操作符:
赋值操作符可以把常量赋值给一个变量,对变量进行重新赋值。
常见的赋值操作符有:=,+=,-=,*=,/=,<<=,>>=,&=,|=,^=
i+=1的操作相当于i=i+1
关系操作符:
常见的关系操作符有:<,>,<=,>=,!=(测试不相等),==(测试相等)
逻辑运算符:
常见的有&&(逻辑与),||(逻辑或)
条件操作符:
exp1?exp2:exp3
a<b?1:0 ---->表示,如果a<b,结果为1;若a>b,结果为0
逗号表达式:
exp1,exp2,exp3……