1.算术操作符
+ - * / %
解释:除了%操作符之外,其他的几个操作符可以起作用于整数和浮点数。
:对于 / 操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的就是浮点数除法。
:% 操作符的两个操作数必须为整数。返回的是整除之后的余数。
2.移位操作符
(1)左移操作符 (<<)位移规则:左边抛弃、右边补0
(2)右移操符 位移规则:
1、逻辑位移左边用0填充,右边丢弃
2、算术位移
左边用原该值得符号位填充,右边丢弃
警告:对于位移运算符,不要移动负数位,这个是标准未定义的。
3.位操作符
& //按位与: 1&1=1;1&0=0;0&0=0
| //按位或: 1 | 1=1;1 | 0=1;0 | 1=1;0 | 0=0
^ //按位异或: 1^1=0;1^0=1;0^1=1;0^0=0
注:他们的操作数必须是整数。
4.赋值操作符 (=)
在C语言里,运算符=并不表示相等,而是一个赋值运算符。这意味着,符号=的左边该是一个可修改的变量名,而右边是赋给该变量的值。
复合赋值符
+- -+ *= /= %= >>= <<= &= |= ^=
5.单目操作符
6.关系操作符
> >= < <= != (用于测试不相等) ==(用于测试相等)
7.逻辑操作符
&& 逻辑与
|| 逻辑或
说明:&& 中有假时,后面不进行运算
|| 中有真时,后面不进行运算
8.条件操作符
exp1?exp2:exp3 是否满足条件1,如果满足则执行操作2,否则执行操作3。
9.逗号表达式
用于隔开多个表达式,从左到右依次执行。整个表达式是最后一个表达式结果。
10 .下标引用、函数引用和结构体:
1下标引用[]
2函数调用操作符()
3访问结构体的成员:.结构体.成员名
->结构体指针->成员名