结构体与位变量
#include <stdio.h>
//在结构体中定义每一位
typedef struct
{
unsigned char bit0:1;
unsigned char bit1:1;
unsigned char bit2:1;
unsigned char bit3:1;
unsigned char bit4:1;
unsigned char bit5:1;
unsigned char bit6:1;
unsigned char bit7:1;
}ST;
//在union中方便操作all和bit(全局操作和位操作)
typedef union
{
unsigned char all;
ST bits;
}UN;
结构体与柔性数组
//柔性数组既数组大小待定的数组, C语言中结构体的最后一个元素可以是大小未知的数组,也就是所谓的0长度,可以用结构体来创建柔性数组。
typedef struct _SoftArray
{
int len;
int array[];
}SoftArray;