我想用这样的C ++创建一个结构,用于ARGB_8888格式:
typedef struct
{
uint8_t alpha;
uint8_t red;
uint8_t green;
uint8_t blue;
} argb;
但是对于RGB_565格式,即R和B:每个5位,G:6位。
答案 0 :(得分:0)
尝试使用位域。语法如下:
typedef struct
{
uint8_t alpha;
uint8_t red:5;
uint8_t green:6;
uint8_t blue:5;
} argb;
这可能无法正常运行,具体取决于此代码所针对的机器。
参见" 6节。位域"在这个链接: structure-packing