# 位字段

在存储空间很宝贵的情况下，有可能需要将多个对象保存在一个机器字中。

```c
#include <stdio.h>

struct config
{
	unsigned int c1: 8;
	unsigned int c2: 16;
	unsigned int c3: 8;
};

int main(int argc, char const *argv[])
{
	struct config cfg;
	printf("size: %d.\n", sizeof(cfg));
	cfg.c1 = 255;
	cfg.c2 = 65535;
	cfg.c3 = 255;
	printf("c1: %d, c2: %d, c3: %d.\n", cfg.c1, cfg.c2, cfg.c3);
	return 0;
}
```

