c++中空的结构体的长度问题

starsoft007 2001-07-20 12:32:12
如有一个空的结构体
struct a
{
}
用sizeof(a)来看它的长度,为什么
结果是1
...全文
129 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
darkay 2001-07-20
  • 打赏
  • 举报
回复
1,是为了使得两个对象有不同的地址(struct定义的也是类!),如果是空的结构的话,那么编译器自己添加一个字节到结果中。不过情况还不是这么简单的,如果有继承关系的时候,有些编译器就可能做优化,这个1字节不填入派生类中。
我不懂电脑 2001-07-20
  • 打赏
  • 举报
回复
和字长有关
柯本 2001-07-20
  • 打赏
  • 举报
回复
你用的是什么C?
FireBow 2001-07-20
  • 打赏
  • 举报
回复
关注
lase 2001-07-20
  • 打赏
  • 举报
回复
nod darkay(火凤凰),你可以看看thinking in C++里面有和火凤凰相同的叙述

70,020

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧