gpt4 book ai didi

c++ - 为什么 RGBTRIPLE 和 RGBQUAD 按 BGR 顺序存储数据?

转载 作者:可可西里 更新时间:2023-11-01 09:49:28 26 4
gpt4 key购买 nike

在 Windows 中,RGBTRIPLE 和 RGBQUAD 结构以相反的顺序定义。这太违反直觉了,我想这一定是故意的。当然,这并不重要,但这让我很烦,所以我觉得值得一问。那么,为什么?

定义:

typedef struct tagRGBTRIPLE {
BYTE rgbtBlue;
BYTE rgbtGreen;
BYTE rgbtRed;
} RGBTRIPLE, *PRGBTRIPLE, NEAR *NPRGBTRIPLE, FAR *LPRGBTRIPLE;

typedef struct tagRGBQUAD {
BYTE rgbBlue;
BYTE rgbGreen;
BYTE rgbRed;
BYTE rgbReserved;
} RGBQUAD;

最佳答案

在小端机器(又名 x86 和 friend )上,结构与位图颜色数据的数据格式完全匹配。

关于c++ - 为什么 RGBTRIPLE 和 RGBQUAD 按 BGR 顺序存储数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5292412/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com