关于C与存储的问题,请高手赐教

1、大多数计算机存储浮点数时都遵循IEEE754标准吗?2、清华大学出版社《C程序设计试题精选》(崔武子等4人著)上面的一道题:原题如下:unionun{inta;flo... 1、大多数计算机存储浮点数时都遵循IEEE754标准吗?

2、清华大学出版社《C程序设计试题精选》(崔武子等4人著)上面的一道题:
原题如下:
union un
{
int a;
float b[2];
float c;
}
main()
{
union un w;
w.a=2000;
w.b[0]=10.2;
w.b[1]=5.3;
w.c=101;
printf("%d\n",w.a);
printf("%f\n",w.b[0]);
printf("%f\n",w.b[1]);
printf("%f\n",w.c);
}
运行后的结果是__________。
A、0 , 101.000000 ,5.300000 ,101.000000
B、2000, 10.2 ,5.3 ,101
C、不确定 ,101 ,5.3 , 101
D、2000 ,10.200000 ,5.300000 ,101.000000

答案用排除法很容易就可以选出来,但我想知道到底为什么。

请高手赐教。
答案是A,但和实际运行结果不符。C中的浮点数在计算机中是遵循IEEE754标准存储的吗?或者会因为编译器不同而不同吗?
展开
 我来答
匿名用户
2010-11-18
展开全部

答案是?我的编译链接执行截图如下 

C语言就是用IEEE 754标准

float 是 32 位 浮点数

double 是 64 位 浮点数

关于共用体

共用体表示几个变量共用一个内存位置,在不同的时间保存不同的数据类型和不同长度的变量。在union中,所有的共用体成员共用一个空间,并且同一时间只能储存其中一个成员变量的值。

http://baike.baidu.com/view/109447.htm

我心如一514617
2010-11-21
知道答主
回答量:19
采纳率:0%
帮助的人:0
展开全部
应该不是浮点数的问题,问题可能出在union上,这个union比较特殊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式