一、算数操作符
算数操作符有:+ - / * %(取余)
对于+,-,*和数学表示是一样的,但是在/和%需要分别一下。如果编写代码5/3,按照我们正确的数学算式,结果应该为1余数为2。
在C语言编辑器中5/3的输出结果为1;
而5%3的输出结果为2。
二、位移操作符
位移操作符有:<<(右移) >>(左移)
注意:位移操作符的操作数只能是整数
在使用位移操作符时我们需要了解位移操作符运行的两种方式:
1.逻辑位移
我们取移动的数字为-1
其在内存中的二进制显示为:
11111111111111111111111111111111(其中第一位显示的为符号,1为负,0为正)
那边逻辑位移是将最后一位去除
在最左边添加一个0
则最后其二进制移动后的结果为:
01111111111111111111111111111111
2.算数位移
一样以-1为例子
相对于逻辑位移不同的,算数位移同逻辑位移一样去除最后一位
但是在最左边添加的是相同的符号位数字
则最后其二进制移动后的结果为:
11111111111111111111111111111111
而位移后的那个数不能为负数
三、位操作符
&(与) 丨(或) ∧(异或)
1.&(与)
在二进制中,如我们写出5和3的二进制
00000000000000000000000000000101
00000000000000000000000000000011
&是如果两个都是0则是0,一个0一个1则是0,两个都是1则是1
则结果的二进制为
00000000000000000000000000000001
则5&3后得到的数字为1
2.丨(或)
同样我们写出5和3的二进制
00000000000000000000000000000101
00000000000000000000000000000011
丨是如果两个都是0则是0,如果一个0一个1也是1,如果两个1则是1
则结果的二进制为
0000000000000000000000000000111
则5丨3后得到的数字为7
3.∧(异或)
同样我们写出5和3的二进制
00000000000000000000000000000101
00000000000000000000000000000011
∧是相同的为0,不同的为1。
则同为1或者0结婚都是0,一个为1一个为0则为1
则结果的二进制为:
0000000000000000000000000000110
则5∧3后得到的数字为6
今日学习完成
有错误请指出,谢谢!