我定义了以下结构:
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的整个大小,如何获得它?
答案 0 :(得分:2)
sizeof(C)
至少为sizeof(A) + sizeof(B) * 10
由于对齐问题,聚合类型可能会更大。可能不是在这种情况下,因为我们真的在谈论11个整数。
答案 1 :(得分:1)
如评论所示,只需在C:
的实例上使用sizeofC c;
sizeof(c);