这sizeof有没有搞错啊

zhouliang0806 2012-06-12 09:26:38
请给出下面这些结构体的sizeof的值

1、struct Class{
int a[4];
float b;};
2、struct Class{
int a[4];
char c;}

我用的是VC6.0编译器,为什么得到的结果和理想中的不一样呢?
大家麻烦看一下。
...全文
151 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouliang0806 2012-06-12
  • 打赏
  • 举报
回复
http://zhidao.baidu.com/question/152697556.html
讲的不错,终于理解了。
yangkai7758 2012-06-12
  • 打赏
  • 举报
回复
对齐问题罢了,可以用pragma指定
tcziflw2010 2012-06-12
  • 打赏
  • 举报
回复
楼主看看这里
http://zhidao.baidu.com/question/152697556.html
jmj49314 2012-06-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
C/C++ code
struct Class{
char c;
int i[2];
double d;
char c2;};
还有这个多少?
[/Quote]
24
tcziflw2010 2012-06-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

C/C++ code
struct Class{
char c;
int i[2];
double d;
char c2;};
还有这个多少?
[/Quote]
是32
qingcairousi 2012-06-12
  • 打赏
  • 举报
回复
#pragma pack(1)
就能得到你想要的结果了,字节对齐的问题。
Binzo 2012-06-12
  • 打赏
  • 举报
回复
char的话也会占用4个字节。因为在存储中计算机取4字节快些。

详细见union的使用。
zhouliang0806 2012-06-12
  • 打赏
  • 举报
回复
struct Class{
char c;
int i[2];
double d;
char c2;};
还有这个多少?
zhouliang0806 2012-06-12
  • 打赏
  • 举报
回复
struct Class{
char c;
int a[4];
也是20吧
qq120848369 2012-06-12
  • 打赏
  • 举报
回复
20,20.

65,189

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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