#include #include typedef struct { char c[4]; unsigned short mode; unsigned short fg; unsigned short bg; } Glyph; typedef struct { long u; unsigned short mode; unsigned short fg; unsigned short bg; } GlyphUtf32; typedef struct { uint_least32_t u; uint_least32_t mode:12; uint_least32_t fg:10; uint_least32_t bg:10; } GlyphUtf32Packed; int main() { printf("sizeof(Glyph): %zu bytes\n", sizeof(Glyph)); printf("sizeof(GlyphUtf32): %zu bytes\n", sizeof(GlyphUtf32)); printf("sizeof(GlyphUtf32Packed): %zu bytes\n", sizeof(GlyphUtf32Packed)); return 0; }