0

我在 32 位操作系统上使用 code::blocks 12.11 (gcc)。我有以下结构:

struct node 
{
int a;
float b;
char d;
struct node* c;
}
s1;

现在单独,

sizeof(int);    sizeof(float);    sizeof(char);

分别给出输出 4 4 1 个字节。所以我计算结构的大小为 13 个字节。但以下

sizeof(s1); or sizeof(struct node);

给出输出 16 字节。

我无法弄清楚为什么会这样。请帮帮我。谢谢。

4

1 回答 1

1

结构四舍五入为 32 位(4 字节)块。如果您再添加 3 个字符,它将是相同的大小。

于 2013-07-22T20:37:43.270 回答