int a[][3] = { 0, 1, 2, 3, 4, 5, 6 };
 char b[] = "string";
 struct{
  int a;
  char b[10];
  double c;
 }c;

 printf("a[1][2] : %d\n", a[1][2]); -> 5출력
 printf("sizeof(a) : %d\n", sizeof(a)); ->36
 printf("sizeof(b) : %d\n", sizeof(b)); ->7
 printf("sizeof(c) : %d\n", sizeof(c)); ->24


가 찍히는데


sizeof(a)는 int형배열이 3*3개있어서 36

sizeof(b)는 6+개행문자해서 7인데

sizeof(c)는 4 + 10 + 8 해서 22같은데 24가 출력되네요


왜 24가 출력되는지 궁금합니다.