位域声明在结构内声明位域的形式如下:
- struct
- {
- type [member_name] : width ;
- };
复制代码下面是有关位域中变量元素的描述: 元素 | 描述 | type | 整数类型,决定了如何解释位域的值。类型可以是整型、有符号整型、无符号整型。 | member_name | 位域的名称。 | width | 位域中位的数量。宽度必须小于或等于指定类型的位宽度。 |
带有预定义宽度的变量被称为位域。位域可以存储多于 1 位的数,例如,需要一个变量来存储从 0 到 7 的值,您可以定义一个宽度为 3 位的位域,如下:
struct
{
unsigned int age : 3;
} Age;
上面的结构定义指示 C 编译器,age 变量将只使用 3 位来存储这个值,如果您试图使用超过 3 位,则无法完成。
|