C语言中的运算符总结
运算符是告诉程序执行特定的算术或者逻辑操作的符号,C语言提供了多种运算符,并且具有很强的运算能力,主要分为以下几类:
1.算术运算符:用于各类数值预算。
包括:加(+),减(-),乘(*),除(/),求余(%)。
注意:(1)除了%操作符之外,其他的几个操作符都可以作用于整数和浮点数。
(2)%操作符的两个操作数必须为整数,并且返回的事整除之后的余数。
(3)对于/操作符,如果两个操作数均为整数,执行整数除法。而只要有浮点数执行的
就是浮点数除法。
2.移位运算符
包括:(1)<< 左移操作符
移位规则:左边抛弃,右边补零。
(2) >> 右移操作符
①算术移位——移位规则:左边原数值符号位填充,右边丢弃。
②逻辑移位——移位规则:左边用零填充,右边丢弃。
例题:求一个整数存储在内存中的二进制中1的个数。
代码如下:
运行结果:
3.赋值运算符
复合赋值符——包括:+= -= *= /= %= >>= <<= &= |= ^=
4.位操作符
(1)按位与 &
(2)按位或 |
(3)按位异或 ^
注意:其操作数必须是整数。
5.单目操作符
包括:!——逻辑反操作 - ——负值 +——正值 &——取地址 sizeof——操作数的类型长度
~——对一个数的二进制按位取反 -- ——前置、后置-- ++——前置、后置++
*——间接访问操作符 (类型)——强制类型转换
6.关系操作数
包括:> >= < <= != ==
7.逻辑运算符
包括:&&——逻辑与 ||——逻辑或
8.条件操作符
exp ? exp2 : exp3
9.逗号表达式
exp1,exp2,exp3,...expN
注意:逗号表达式,从左往右依次执行,整个表达式的结果是最后一个表达式的结果。
操作符的优先级: