NDK-在C++中创建16位rgb结构

NDK - Create 16 bit rgb struct in C++

本文关键字:16位 rgb 结构 创建 C++ NDK-      更新时间:2023-10-16

我想用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位。

尝试使用位字段。语法如下:

typedef struct
{
    uint8_t alpha;
    uint8_t red:5;
    uint8_t green:6;
    uint8_t blue:5;
} argb;

这可能无法完全按照您的预期工作,这取决于此代码的目标机器。

请参阅"6。Bitfields"在此链接:结构包装