1. 与运算
与运算用符号&表示,表示对两个数的二进制位进行与操作,即只有两个数的对应二进制位都为1时,结果才为1,例如
3 & 5 = 1
3的二进制表示为0011,进行与运算后得到0001,即1。
2. 或运算
或运算用符号|表示,表示对两个数的二进制位进行或操作,即只要两个数的对应二进制位有一个为1时,结果就为1,例如
3 | 5 = 7
3的二进制表示为0011,进行或运算后得到0111,即7。
3. 异或运算
异或运算用符号^表示,表示对两个数的二进制位进行异或操作,即只有两个数的对应二进制位不同时,结果才为1,例如
3 ^ 5 = 6
3的二进制表示为0011,进行异或运算后得到0110,即6。
4. 左移运算
位,低位补0。例如
3<< 2 = 12
3的二进制表示为0011,将其左移2位得到1100,即12。
5. 右移运算
位,高位补0。例如
5 >>2 = 1
将其右移2位得到0001,即1。
位运算在C语言中非常重要,掌握了这些技巧可以大大提高编程效率。与、或、异或、左移、右移等操作都有其特定的用途,需要根据实际情况进行选择。同时,在进行位运算时需要注意数据类型的转换,以免出现错误。