C语言中结构体定义如果某个变量不需要基础数据类型的字节数,则可以通过冒号的方式通过位域来定义需要的字节数。
typedef struct
{
uint8_t r : 8;
uint8_t g : 8;
uint8_t b : 8;
uint8_t hdr : 1;
uint8_t a : 2;
uint8_t pad : 5;
}HDRPIXEL;
上面这个结构体的真实所占字节数为 4 。
C语言中结构体定义如果某个变量不需要基础数据类型的字节数,则可以通过冒号的方式通过位域来定义需要的字节数。
typedef struct
{
uint8_t r : 8;
uint8_t g : 8;
uint8_t b : 8;
uint8_t hdr : 1;
uint8_t a : 2;
uint8_t pad : 5;
}HDRPIXEL;
上面这个结构体的真实所占字节数为 4 。