C语言中的操作符首先来个系统的分类吧
1. 算数操作符 2.移位操作符 3.位操作符 4.赋值操作符 5.单面操作符
6.关系操作符 7.逻辑操作符 8.条件操作符 9.逗号表达式
开始正文了:
1.算数操作符: + - * / %
+ - * /这四个操作符可用于整数或浮点数,但对于%两个数必须都是整数结果是二者相除得到的余数。
对于 / 而言两个数只要有一个数是浮点数那么执行的就是浮点数除法。
2.位移操作符 << 左移操作符 >>右移操作符
<< 左边抛弃右边补0 >>逻辑移位:左边补0右边抛弃 算数移位:左边用原符号位的值填充,右边抛弃
对于移位操作符 不能移位负数位 不同环境的编译器不同结果 没有定义一个标准
3.位操作符: & | ^(位操作符只能操作整数)
&:按位与 相同输出1 不同输出0
|:按位或
^:异或 相同为0,不同为1
4.赋值操作符 =
复和赋值: a+=1 等同于 a=a+1 -= *= /= ……与加法相同
5.单目操作符: ! - + & sizeof -- ++ * ~
!:逻辑反操作 -:负值 +:正值 sizeof:求长度的 ~:按位取反 *:解引操作符 &:取地址
--: 前置:先-1再使用 后置:先使用再-1
++:前置:先+1再使用 后置:先使用再+1
6.关系操作符
> 大于 ; < 小于; <= 小于等于; >= 大于等于
!=:判断不相等 == 判断相等
7.辑操作符
&&:逻辑与 注:一个为假后面不运行
||:逻辑或 一个为真后面不运行
8.条件操作符
exp1 ? exp2 : exp3 相当于一个if else 语句 exp1为真则执行exp2 否则执行exp3
9.逗号表达式
顾名思义就是用逗号隔开多个表达式
需要注意的是,逗号表达式从左向右依次执行,但是整个表达式的结果是最后一个表达式的结果