char b0:1;是什么意思? 给b0赋值为1?

2024-12-17 04:28:28
推荐回答(2个)
回答1:

位域,是结构体的一种形式。谭老的C语言教材里讲的有。
strcut regChar
{
char a0:2;
char b0:1;
char reserved:5;
}
就是把一个char再分成了3部分,b0只占8位中的其中一位,即第3位。
位域在嵌入式编程中用的非常广泛,通常是用来定义与硬件寄存器相对应的结构体时用到。硬件寄存器(比如是32位),可能0~8位代表一个标志,9~15位又代表一个标志,所以定义一个与其结构一致的结构体,来方便对硬件寄存器的读写。

回答2:

char b0:1;

就是声明一个变量 叫做 b0:1

" b0:1 ” 只是一个变量而已啊

给b0赋值为1 表示为: char b0 = 1;