struct 结构体问题?!!

来源:百度知道 编辑:UC知道 时间:2024/05/12 01:23:47
struct {
ushort b0:1;
ushort b1:1;
ushort b2:1;
} bit;
在结构体中b0:1;是什么意思??

位域。
b0:1说明b0成员只占一个bit的空间,相同类型的位域可以压缩存储,比如bit这个struct可以存储在2个byte的空间内,sizeof(bit)应该等于sizeof(ushort),但是如果相邻同类型的位数和超过类型大小还是要进行对齐,具体的规则你自己搜一下吧。