C语言位运算,判断一个字节的某位是否为1

哎哎8年前 (2016-06-14)C++4679

直接上代码

char data = 0x01; //需要比较的数据
char temp = 0x01;  //如果是单字节为 0x01  双字节为 0x0001
char lasttemp =0x00;
for(int i = 0 ;i <4 ;i++) //判断几个字节就在这里输入几
{
    lasttemp =  data>>i;//先右移,然后与0x01 & 运算,如果为1 则 结果为1 ,第i位就是1了。
        if(lasttemp&temp)
        {
            printf("第%d位,为1。",i);
        //to do some.
        }
}


以上