我有以下结构
struct node{
int value;
struct node *next;
struct node *prev;
};
而且我认为大小必须大于 sizeof(integer)。
但是如何计算这个结构的整体大小令人困惑。
那么如何计算尺寸呢?
我的意思是我想用手手动计算,而不是用电脑...
最佳答案
大小至少为sizeof(int) + sizeof(struct node *) + sizeof(struct node *)
。但它可能更多,因为编译器可以根据需要向您的结构添加填充字节。
sizeof(int)
和 sizeof(struct node*)
有多大取决于您的系统。如果您有一个 32 位系统,它们很可能每个都是 4 个字节,或者如果您有一个 64 位系统,它们可能是 8 个字节。但真正确定的唯一方法是使用编译器打印出大小。
关于c++ - 如何计算C中结构的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12986667/