由于 char 只有 1 个字节长,因此在处理 8 位 unsigned int 时使用 char 是否更好?
示例:我试图创建一个结构来存储颜色的 RGB 值。
struct color
{
unsigned int r: 8;
unsigned int g: 8;
unsigned int b: 8;
};
Run Code Online (Sandbox Code Playgroud)
现在由于它是 int,所以在我的例子中它分配了 4 个字节的内存。但如果我用 unsigned char 替换它们,它们将按预期占用 3 个字节的内存(在我的平台中)。