//按位与 & , 有 0 为 0 , 全1 为 1
//作用 : 把某些二进制位清零, 需要清零的给 0 与 , 需要保留的给 1 与;
int a = 0b00000011;
int b = 0b00000010;
int c = a & b;
//作用 : 把某些二进制位清零, 需要清零的给 0 与 , 需要保留的给 1 与;
int a = 0b00000011;
int b = 0b00000010;
int c = a & b;
printf("%d\n", c);
//下图是运行结果
//按位或 | , 有 1 为 1 , 全0 为 0
//作用 : 把某些二进制位赋值1, 需要附 1 的给 1 或 , 需要保留的给 0 或;
int a = 0b00000011;
int b = 0b00000010;
int c = a | b;
printf("%d\n", c);
//下图是运行结果
// 按位取反
int a = 0b101;
int c = ~ a;
printf("c = %d", c);
// 异或 ^ 相同取0 不同 取 1;
int a = 0b00001111;
int b = 0b00010101;
int c = a ^ b;
printf("c = %d", c);
// 利用 ^ 可以 很巧妙的交换两个 变量的值
// 我的第一篇博客已经讲过了