位段

时间:2023-02-16 07:15:26

1、定义

C语言允许在一个结构体中以位为单位来指定其成员所占内存长度,这种以位为单位的成员称为位段。利用位段能够用较少的位数存储数据

2、注意:

    位段的内存分配2)位段占的二进制位数不能超过该基本类型所能表示的最大位数,即位段不能跨字节存储,比如在VC中int是占4个字节,那么最多只能是32位;

(1)位段的成员可以是 int unsigned int signed int 或者是 char (属于整形家族)类型。

(2)位段的空间上是按照需要以4个字节(int)或者1个字节(char)的方式来开辟的。

(3)位段涉及很多不确定因素,位段是不跨平台的,注重可移植的程序应该避免使用位段。

3、位段占的二进制位数不能超过该基本类型所能表示的最大位数,即位段不能跨字节存储,比如在char是占1个字节,那么最多只能是8位;

位段

4、在位段中不给其起名字,无法访问该位段,但是计算大小是仍占空间。


位段