C语言允许在一个结构体中以位为单位来指定其成员所占内存长度,这种以位为单位的成员称为“位段”或称“位域”( bit field) 。利用位段能够用较少的位数存储数据。
程序如下:
struct packed-data
{unsigned a:2;
unsigned b:6;
unsigned c:4;
unsigned d:4;
int i;
}data;

C语言位段与内存优化:位域解析
本文介绍了C语言中的位段(位域)特性,如何使用位段来以位为单位定义结构体成员的内存长度,从而实现更高效的数据存储。示例程序展示了如何定义和使用位段,通过这种方式可以减少内存消耗。
C语言允许在一个结构体中以位为单位来指定其成员所占内存长度,这种以位为单位的成员称为“位段”或称“位域”( bit field) 。利用位段能够用较少的位数存储数据。
程序如下:
struct packed-data
{unsigned a:2;
unsigned b:6;
unsigned c:4;
unsigned d:4;
int i;
}data;

968
1759
4831
5700
1269

被折叠的 条评论
为什么被折叠?