三、位运算符在运算符与表达式中扮演什么角色?
- 内容介绍
- 文章标签
- 相关推荐
本文共计964个文字,预计阅读时间需要4分钟。
C语言中的位运算符用于对数据的二进制位进行操作。以下是一些位运算符的说明及代码示例:
1. 按位与(&):只保留两个数的对应位中都是1的位。 c int a=12; // 二进制:1100 int b=5; // 二进制:0101 int c=a & b; // 结果:二进制:0100,即十进制:4
2. 按位或(|):只保留两个数的对应位中至少有一个是1的位。 c int a=12; // 二进制:1100 int b=5; // 二进制:0101 int c=a | b; // 结果:二进制:1101,即十进制:13
3. 按位异或(^):只保留两个数的对应位中一个是1一个是0的位。 c int a=12; // 二进制:1100 int b=5; // 二进制:0101 int c=a ^ b; // 结果:二进制:1001,即十进制:9
4. 按位取反(~):将数的所有位取反,0变1,1变0。 c int a=12; // 二进制:1100 int c=~a; // 结果:二进制:0011,即十进制:-13(在计算机中,负数以补码形式表示)
5. 左移(<<):将数的二进制位向左移动指定的位数。
本文共计964个文字,预计阅读时间需要4分钟。
C语言中的位运算符用于对数据的二进制位进行操作。以下是一些位运算符的说明及代码示例:
1. 按位与(&):只保留两个数的对应位中都是1的位。 c int a=12; // 二进制:1100 int b=5; // 二进制:0101 int c=a & b; // 结果:二进制:0100,即十进制:4
2. 按位或(|):只保留两个数的对应位中至少有一个是1的位。 c int a=12; // 二进制:1100 int b=5; // 二进制:0101 int c=a | b; // 结果:二进制:1101,即十进制:13
3. 按位异或(^):只保留两个数的对应位中一个是1一个是0的位。 c int a=12; // 二进制:1100 int b=5; // 二进制:0101 int c=a ^ b; // 结果:二进制:1001,即十进制:9
4. 按位取反(~):将数的所有位取反,0变1,1变0。 c int a=12; // 二进制:1100 int c=~a; // 结果:二进制:0011,即十进制:-13(在计算机中,负数以补码形式表示)
5. 左移(<<):将数的二进制位向左移动指定的位数。

