标题:[求助]新手问C语言问题
只看楼主
popwer
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2006-9-4
 问题点数:0 回复次数:3 
[求助]新手问C语言问题
2.下面程序的输出结果是什么?
union un
{int a[4];
long b;
char c[6];}
main()
{
union un u;
printf("%d%d",sizeof(u),sizeof(u,a));
}
最后输出的结果是88, 为什么啊 高手帮忙解释下 谢谢了

谢谢帮忙啊 :)
搜索更多相关主题的帖子: C语言 
2006-09-04 18:50
puvypm27
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-2-28
得分:0 
sizeof(u),是求u这个联合的长度,也就是最长的那个元素的长度,也就是a[4]的长度,
一个int类型是2字节,4个就是8字节,
sizeof(u.a)是直接求a[4]的长度,也是8

2006-09-04 19:05
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 

掌握结构体(空间相加)和共用体(取最大值)
int a[4]--->2B*4=8B
long b--->4B*1=4B
char c[6]--->1B*6=6B


倚天照海花无数,流水高山心自知。
2006-09-04 19:31
popwer
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2006-9-4
得分:0 
谢谢两位了  嘿嘿  搞明白了  HOHO

神话自我开始,梦想由我延续
2006-09-04 20:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-87973-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.961966 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved