标题:请教一个共用体问题!
取消只看楼主
camelbupt
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-9-28
 问题点数:0 回复次数:1 
请教一个共用体问题!

#include "stdio.h"
union data
{
int i[2];
float a;
long b;
char c[4];
};
int main()
{
union data d;
scanf("%d,%d",&d.i[0],&d.i[1]);
printf("i[0]=%x,i[1]=%d,a=%f,b=%ld\n",d.i[0],d.i[1],d.a,d.b);
printf("c[0]=%c,c[1]=%c,c[2]=%c,c[3]=%c\n",d.c[0],d.c[1],d.c[2],d.c[3]);
}
当输入10000,20000时,为什么a的值始终都是0啊?

搜索更多相关主题的帖子: include 
2007-10-30 18:43
camelbupt
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-9-28
得分:0 

看来还是有不少人不理解union这个东东啊,
一楼的是正解啊,整型和浮点型在内存中的存储格式不一样。

2007-10-31 17:31



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




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

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