C语言位运算符详解

位运算符

C语言中的位运算符是什么?据专业术语上的描述,位运算,即操作二进制位的过程!个人理解,这句话简而言之就是通过C语言的代码直接操作机器码上的二进制数,即对各种各样的值的二进制数的每个0和1位上的运算(仅供参考)。

C语言位运算符表

符号描述实例
&按位与,如果两个对应的位都是1,则结果为1,否则为06(110)& 2(010)得 2(010)
|按位或,如果两个对应的位至少有一个1,则结果为1,否则为06(110)| 2(010)得 6(110)
^按位异或,如果两个对应的位中有且仅有一个为1,则结果为1,否则为06(110)^ 3(011)得 5(101)
~按位取反,对一个数的每个二进制位取反,即1变为0,把0变为1~5(101)得 -6
<<左移,将左操作数所有二进制位向左移若干位,右边空出的位用0填充6(110) << 1 得 12(1100)
>>右移,将左操作数所有二进制位向右移若干位,左边空出的位用0填充6(110) << 2 得 1(001)

C语言位运算符实例代码

#include <stdio.h>

int main() {
    printf("%d \n", 6 & 2); 
    printf("%d \n", 6 | 2); 
    printf("%d \n", 6 ^ 3); 
    printf("%d \n", ~5); 
    printf("%d \n", 6 << 1); 
    printf("%d \n", 6 >> 2); 
}

免责声明:内容仅供参考,不保证正确性。


全栈后端 / C语言教程 :


















Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.