首页 > C语言 位运算和逻辑运算

C语言 位运算和逻辑运算

include <stdio.h>

define MASK 4

void main(void) {
unsigned int x=7;
x<<=1;
x&=~MASK;
printf("%#X\n",x);
} //输出0XA 为什么


x = 7;   //0111
x << 1;  //1110
x &=~MASK;  //相当于 x &=~(1<<2), 也就是2位置0, 最后结果为1010

二进制1010 相当于十六进制为0XA.
&=~ MASK ,是很常见的位置0操作, MASK为1的位会被置0

【热门文章】
【热门文章】