如何在C中调整整个结构的大小?

时间:2013-05-27 15:36:55

标签: c struct sizeof

我定义了以下结构:

typedef struct
{
   int a;
} A;

typedef struct
{
   int b;
} B;

typedef struct
{
   A a,
   B b[10];
} C;

sizeof(C)将是sizeof(A) + sizeof(B) * 10?我想拥有struct C的整个大小,如何获得它?

2 个答案:

答案 0 :(得分:2)

sizeof(C)至少为sizeof(A) + sizeof(B) * 10

由于对齐问题,聚合类型可能会更大。可能不是在这种情况下,因为我们真的在谈论11个整数。

答案 1 :(得分:1)

如评论所示,只需在C:

的实例上使用sizeof
C c;
sizeof(c);
相关问题