C语言中按位置1,清0和获取某一位的操作
#include <stdio.h>
int main()
{
unsigned char c = 2;
printf("c=%d\n",c);
int nbit = 3;
c|=1<<nbit;
printf("第%d位置1后,c=%d\n",nbit,c);
c&=~(1<<nbit);
printf("第%d位置0后,c=%d\n",nbit,c);
unsigned char b;
b=((c>>(1))&1);
printf("第%d位的值为b=%d\n",1,b);
b=((c>>(2))&1);
printf("第%d位的值为d=%d\n",2,b);
return 0;
}
运行结果如下:
c=2
第3位置1后,c=10
第3位置0后,c=2
第1位的值为b=1
第2位的值为d=0
给孤独的理想插上自由的翅膀