当前位置: 代码迷 >> C语言 >> 有编程经验的人进来看下这个问题?
  详细解决方案

有编程经验的人进来看下这个问题?

热度:129   发布时间:2006-10-19 20:05:24.0
有编程经验的人进来看下这个问题?

现在有下面的code
#include <stdio.h>

typedef struct
{
int a;
char b;
}DEFSTT;

void main(void)
{
DEFSTT f={12,'y'};
printf("%d\n",sizeof(f));
}

有人知道为什么结果不是5,而是8呢?
结构体的长度如何取呢??

搜索更多相关的解决方案: 经验  void  DEFSTT  int  main  

----------------解决方案--------------------------------------------------------
没人知道??
----------------解决方案--------------------------------------------------------

我知道了,


----------------解决方案--------------------------------------------------------
自己解决
----------------解决方案--------------------------------------------------------
请说说,我并不是很清楚
----------------解决方案--------------------------------------------------------
你个大傻瓜 。。。

明明是 3 ,用脚趾头就能想出来 。。。

你怎么又 5 又 8 的呢 。。。


----------------解决方案--------------------------------------------------------
我用vc.6.0结是是8,不知为什么
----------------解决方案--------------------------------------------------------
6楼的,你编译过吗?
没有时间就没有发言权!
另外,我用的是32位的编译器,
这里面 int 是4 byte
char 1 byte
----------------解决方案--------------------------------------------------------

继续说


----------------解决方案--------------------------------------------------------

#include <stdio.h>

typedef struct
{ char c;
int a;
short b;
}DEFSTT;

typedef struct
{
int x;
char y;
short z;
}sss;

void main(void)
{
DEFSTT f;
sss h;
printf("%d\n",sizeof(f));
printf("%d\n",sizeof(h));
}
7楼的你编译一下这个,结果不一样哦~


----------------解决方案--------------------------------------------------------
  相关解决方案