简单整理一些C语言中常用的一些操作符。
C语言中常用的操作符有:算术操作符,移位操作符,位操作符,赋值操作符,单目操作符,关系操作符,逻辑操作符,条件操
作符,逗号操作符等。
其中,
一,算术操作符:
+ | - | * | % | / |
注意:
1.除了%操作符之外,其他的几个操作符都可以作用于整数和浮点数。
2.对于/操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的就是浮点数除法。
3.%操作符的两个操作数必须为整数,返回的是整除之后的余数。
二,移位操作符:
<< | 左移操作符 |
规则 | 左边抛弃,右边补0 |
>> | 右移操作符 |
规则 | 1.逻辑移位:左边用0填充,右边丢弃。 2.算术移位:左边用原该值的符号位填充,右边丢弃。 |
三,位操作符:
& | 按位与 | 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0 |
| | 按位或 | 如果两个相应的二进制位都为0,则该位的结果值为0,否则为1 |
^ | 按位异或 | 如果两个想应的二进制位相同, 则该位的结果值为0,不同为1 |
注意:它们的操作必须是整数。
四,赋值操作符:
+= | -= | *= | /= | %= | >>= | <<= | &= | |= | = |
注意:这些运算符都可以写成复合的效果。
五.单目操作符:
! | 逻辑反操作 |
- | 负值 |
+ | 正值 |
& | 取地址 |
sizeof |
操作数的类型长度(以字节为单位) |
~ | 对一个数的二进制按位取反 |
-- | 前置,后置-- |
++ | 前置,后置++ |
* | 间接访问操作符(解引用操作符)逻辑反操作 |
六,关系操作符:
> | <= | < | <= | != (用于测试“不想等”) | == (用于测试“相等“) |
注意:1.=为赋值,==为相等。
2.在数组与字符串是否相等的判断中,亦不能用”==“。
七,逻辑操作符
&& | 逻辑与 |
|| | 逻辑或 |
逻辑与和按位与,逻辑或和按位或的区别:
1&2————0,1&&2————1
1|2————3,1||2————1
八,条件操作符:
例如:exp1 ? exp2 : exp3
我个人对这个语句的理解是:如果1成立,则2成立;如果1为假,则3成立。
九,逗号表达式:
例如:exp1,exp2,exp3,exp4,...expN
注意:逗号表达式从左向右依次执行,整个表达式的结果是最后一个表达式的结果。
—— —— —— —— —— —— —— —— —— ——
除了这些常见的操作符,还有下标引用 [ ] ,函数调用 (),访问一个结构的成员 · 等操作符。
最后,由于大部分都是自己找资料整理,内容中可能会有一些疏漏或错误,欢迎大家指正。
2018/4/9