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

时间:2016-07-22 21:57:02

标签: android c++ image-processing android-ndk java-native-interface

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

1 个答案:

答案 0 :(得分:0)

尝试使用位域。语法如下:

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

这可能无法正常运行,具体取决于此代码所针对的机器。

参见" 6节。位域"在这个链接: structure-packing