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 バイトを double に使用できないのはなぜですか? そして、最後の 4 バイトの必要性は何ですか?