如何判断数据的每个字节的状态(0/1)

在有些情况下想要进可能的节省空间,会把一个int或者char的每个字节位都进行赋值,让每一个字节位都有各自的含义。如果想要取出来的话可以按照按位与的情况

求出char类型的每个字节的状态
按位与
unsigned char a;
int r[8];
r[0] = a & 0x01; // 最低位
r[1] = ( a & 0x02) >> 1;
r[2] = ( a & 0x04) >> 2;
r[3] = ( a & 0x08) >> 3;
r[4] = ( a & 0x10) >> 4;
r[5] = ( a & 0x20) >> 5;
r[6] = ( a & 0x40) >> 6;
r[7] = ( a & 0x80) >> 7; // 最高位

这是char类型,如果是int类型同理。但是要注意大小端的问题。












 
posted @ 2018-07-28 19:42  虚荣i  阅读(165)  评论(0编辑  收藏  举报