C++-结构体内存对齐
typedef union {long i; int k[5]; char c;} DATE;
struct data { int cat; DATE cow; double dog;} too;
sizeof(too)最后的结果是4+20+8=32,为什么这里不用考虑内存对齐?如果考虑了的话是20+20+20了。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我想你理解错了内存对齐的含义了,内存对齐分字对齐(4字节),字节对齐(1字节)等,并不是与结构体中的最大变量类型长度对齐。