关于double类型变量给float变量赋值的溢出有关问题
关于double类型变量给float变量赋值的溢出问题
今天看了谭浩强的书,用VC6.0实现了其中一个程序段,如下:
按照以前的认识和书上讲的,将如此大的数赋给一个float变量必定溢出,但是结果如下图:
看最后结果 f和d输出的结果是一样的,请问这是什么情况?
环境是64位win7/VC++6.0
------解决思路----------------------
VC6不会连float和double都傻傻分不清楚吧,这么大的数foat没法放
------解决思路----------------------
珍惜生命,远离VC6
------解决思路----------------------
vs2008下溢出了
------解决思路----------------------
不要再用VC6了,好吗?
vs2015都要出来了。用下vs2013吧,实在是太优雅了。
今天看了谭浩强的书,用VC6.0实现了其中一个程序段,如下:
#include<stdio.h>
void main()
{
float f;
double d;
d=123.456789e100;
f=d;
//f=1e1;
printf("f=%f\n",f);
printf("d=%f\n",d);
}
按照以前的认识和书上讲的,将如此大的数赋给一个float变量必定溢出,但是结果如下图:
看最后结果 f和d输出的结果是一样的,请问这是什么情况?
环境是64位win7/VC++6.0
------解决思路----------------------
VC6不会连float和double都傻傻分不清楚吧,这么大的数foat没法放
------解决思路----------------------
珍惜生命,远离VC6
------解决思路----------------------
vs2008下溢出了
------解决思路----------------------
不要再用VC6了,好吗?
vs2015都要出来了。用下vs2013吧,实在是太优雅了。