struct stu
{
char a;
char b;
double c;
}
问sizeof(stu)=?
答案16
111->1+1+1
114->(1+1)+(1+1)+4
118->(1+3)+(1+3)+8
141->(1+3)+4+(1+3)
144->(1+3)+4+4
148->(1+3)+4+8
181->(1+7)+8+(1+7)
188->(1+7)+8+8
411->4+(1+1)+(1+1)
414->4+(1+3)+4
418->4+(1+3)+8
441->4+4+(1+3)
444->4+4+4
448->4+4+8
481->(4+4)+8+(1+7)
484->(4+4)+8+(4+4)
488->(4+4)+8+8
811->8+(1+3)+(1+3)
814->8+(1+3)+4
818->8+(1+7)+8
841->8+4+(1+3)
844->8+4+4
848->8+(4+4)+8
881->8+8+(1+7)
884->8+8+(4+4)
888->8+8+8
不同的编译器下会产生不同的情况,以上在VS2005和DVE-CPP上已验证
有空补空,没空对齐
posted on 2008-07-23 18:59
Niino 阅读(261)
评论(0) 编辑 收藏 引用