typedef struct structc_tag
{
char c;
double d;
int s;
} structc_t;
我在博客中读到这将需要 24 个字节的数据:
sizeof(char) + 7 字节填充 + sizeof(double) + sizeof(int) + 4 字节填充 = 1 + 7 + 8 + 4 + 4 = 24 字节。
我的问题是为什么 7 字节的填充,为什么我们不能在那里使用 3 字节的填充并利用接下来的 8 字节进行加倍?最后 4 个字节需要什么?