可能重复:
Why isn't sizeof for a struct equal to the sum of sizeof of each member?为什么这个结构体12的大小不是10?
我试图解析ID3v2标签,至少得到这样的艺术家,标题和专辑的重要数据,但我无法设置必要的结构。
struct ID3v2_frame{
char id[4];
unsigned int size;
bool flags[2];
};
ID3v2_frame frame;
cout<<sizeof(frame)<<endl;
这是一个问题,我如何设置一个4字节的int我认为。 当我输出sizeof(帧)它输出12,我的预期输出是10. 我在64位的Linux机器上运行。
'bool'是不是C型。它是如何定义的? – leppie 2012-03-14 05:16:21
是的,它是非常多的,没有在我的搜索中遇到它,虽然得到了答案,谢谢 – carboncomputed 2012-03-14 05:23:22
@leppie:'bool'不是在C89中的标准类型,但它是在C99后'#include' (并且'_Bool'在任何时候都是C99中的一个类型)。 –
2012-03-18 21:22:10