C语言 Day7
初识操作符
算术操作符
1 | + - * / %(取余) |
位移操作符
1 | >> << |
位操作符
1 | & ^ | |
赋值操作符
1 | = += -= *= /= &= ^= |= >>= <<= |
单目操作符
1 | ! 逻辑反操作 |
算术操作符
算术操作符没什么好说的,就是简单的四则运算,但会有一些初学时的误区
1 | int main() |
结果是4
为什么不是4.5呢?是因为用的整型int
吗?试着改成float
1 | int main() |
结果是4.0000
已经都换成了浮点数,为什么还是不行呢?
是因为/
两边都是整数,就会进行整数除法,而两边任意一侧是小数,就会进行小数除法
1 | int main() |
结果是4.5
位移操作符
位移操作符就是将数字转化成二进制位,在进行左移右移的操作符
1 | int main() |
结果是4
为什么呢?
是因为,1个整形,相当于4个字节,而每个字节又相当于8bit,因此2
这个整形相当于占用了32个字节,因此2在整形中二进制位的表示是,00000000000000000000000000000010
如图所示,所以结果是4
赋值操作符
理解起来很简单,可以进行复合赋值,直接展示
1 | int a = 1; |
单目操作符
单目操作符就是只需要有1个操作数的操作符,因此我们之前看到的那些就可以称为,双目操作符
!逻辑反操作
真变假,假变真
在C语言中,0为假,非0为真
1 | int main() |
因此,输出结果是0
1 | int main() |
输出结果为1
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 qianbimo's blog!