操控位的第二种方法是位字段。为字段是一个signed int或unsigned int类型变量中的一组响铃的位(C99和C11新增了——Bool类型的位字段)。位字段通过一个结构声明来建立,该结构声明为每个字段提供标签,并确定该字段的宽度。
struct
{
unsigned int autfd : 1;
unsigned int bldfc : 1;
unsigned int undln : 1;
unsigned int itals : 1;
} prnt;
prnt包含4个1位的字段。由于每个字段恰好位1位,所以变量prnt只占四位。