您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
C语言中怎么依次取一个8位变量的每一位?
每一位,你的,也是C语言中怎么依次取一个8位变量的每一位?
发布时间:2016-12-08加入收藏来源:互联网点击:
C语言中怎么依次取一个8位变量的每一位?
回答于 2019-09-11 08:43:50
回答于 2019-09-11 08:43:50
typedef struct
{
a:1;
b:1;
c:1;
d:1;
e:1;
f:1;
g:1;
h:1;
} BYTE;
BYTE byte =0xFF;
byte.a = 1; //第一位
byte.b = 1;//第二位
类推……
回答于 2019-09-11 08:43:50
ch[0] = data & 0x01;
ch[1] = data & 0x02;
ch[2] = data & 0x04;
ch[3] = data & 0x08;
ch[4] = data & 0x10;
ch[5] = data & 0x20;
ch[6] = data & 0x40;
ch[7] = data & 0x80;
回答于 2019-09-11 08:43:50
位操作,也是C语言中很重要的技巧!
temp0 = (data&(1<<0))>>0
temp1 = (data&(1<<1))>>1
temp2 = (data&(1<<2))>>2
···
temp7 = (data&(1<<7))>>7
依次取出data(8位)中的每一位。
回答于 2019-09-11 08:43:50
笨笨的说,比如你的数据在a中,则:
b1=a & (char )0x01;//取第一位
b2=a &(char )0x02;//取第二位
…
b8=a &(char )0x80;//取第八位
应该明白了吧。
上一篇:嫁出去的女儿有继承权吗?
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |