按位运算符对位进行运算(即对操作数的二进制值进行运算)
| 运算符 | 描述 |
|---|---|
| & | 按位AND |
| | | 按位或 |
| ^ | 按位异或 |
| << | 左移 |
| >> | 右移 |
| - | 补码 |
| 按位与 | ||
|---|---|---|
| a | b | a & b |
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
| a | b | a | b |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 | tr>
| 1 | 1 | 1 |
| 按位异或 | ||
|---|---|---|
| a | b | a^b |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 01 | |
| 1 | 1 | 0 |

示例
以下是借助按位运算符进行加法和乘法 2 的 C 程序 -
现场演示
#include<stdio.h>
main(){
int a;
printf("Enter a</p><p>");
scanf("%d",&a);
printf("%d*2=%d </p><p>",a,a<<1);
printf("%d/2=%d </p><p>",a,a>>1);
}输出
执行上述程序时,会产生以下输出 -
Run 1: Enter a 45 45*2=90 45/2=22 Run 2: Enter a 65 65*2=130 65/2=32










