24 lines
707 B
C
24 lines
707 B
C
// 位段: 是啥? 为啥要用?
|
|
// 位段: 用来节省内存空间的
|
|
// 位段: 用来存储多个不同的数据
|
|
// 位段: 用来存储多个不同的数据, 但是这些数据的取值范围都比较小
|
|
// 位段的定义: struct 结构体名
|
|
// {
|
|
// 数据类型 变量名: 位数;
|
|
// 数据类型 变量名: 位数;
|
|
// };
|
|
// 位段的使用: 位段的使用和结构体的使用是一样的
|
|
// 位段的注意事项: 位段的位数不能超过数据类型的位数
|
|
#include <stdio.h>
|
|
struct
|
|
{
|
|
char a : 3;
|
|
short b : 9;
|
|
short : 1; // 下一个变量的位段从新的存储单元开始
|
|
int c : 19;
|
|
} p1;
|
|
int main()
|
|
{
|
|
printf("p1 size: %lu B\n", sizeof(p1));
|
|
return 0;
|
|
} |