次の場合、56バイトを取得しています。誰がそれがどのように説明できますか?
#include <stdio.h>
typedef struct how_many_bytes {
long s[4];
char c, e;
int i[2];
char *d;
} How_Many_Bytes;
int main(){
printf("%lu ", sizeof(How_Many_Bytes));
}
(4*8) + 1 + 1 + 2(パディング用) + 4 + 4 + 8 = 52 バイトではないでしょうか