2.22507e-308 to 1.79769e+308 是什么意思

2.22507e-308表示的是什么数字,不懂..
谢谢,能再帮我说清下吗?那里面的e是什么意思?还有那如果有其它的数字比如 5.22507e-308等范围外的数那他怎么表示?
这些那像都不能表示.
float 1.17549e-038 to 3.40282e+038
double 2.22507e-308 to 1.79769e+308
long double 2.22507e-308 to 1.79769e+308

另外什么是对数,对数我也不懂.麻烦也说下谢谢!!

首先,你说的2.22507e-308就是2.22507乘以10的-308次方

至于你说的范围之外的,那只能另想办法了,不过这么大的数,在一般科学计算中都能满足了,根本没必要考虑范围之外的数。

用logm(n)表示以m为底n的对数,假设值为k,意思就是m的k次方等于n。

在C/C++中,float和double类型都不是直接映射在内存中存储的,而是以一定算法存储的。一般如下图所示:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-07-26
float 1.17549e-038 to 3.40282e+038 表示1.17549乘以10的-38次方 到 3.40282乘以10的38次方这个范围,是浮点数的取值范围;

double 2.22507e-308 to 1.79769e+308 表示2.22507乘以10的-308次方 到1.79768乘以10的308次方这个范围,是双精度型的取值范围;
e是指数的意思,英文是exponent。

5.22507e-308等范围外的数,就不属于双精度double或者长双精度的范围了。

对数的英文为logarithms,如果a的n次方=b,那么log(a)(b)=n。其中,a叫做“底数”,b叫做“真数”,n叫做“以a为底b的对数”。

指数和对数都是高中数学的知识。
第2个回答  2010-07-26
2.22507e-308 to 1.79769e+308表示2.22507e-308到1.79769e+308的范围。
e是表示对数,比如0.000123就等于1.23e-4。也就是0.000123等于1.23乘以10的-4次方。同理123000就等于1.23e+5。通过这就就理解你提的了。
第3个回答  2010-07-26
2.22507e-308表示2.22507乘以10的-308次方

1.79769e+308表示1.79768乘以10的308次方
这个是对的,就是说大小在
2.22507乘以10的-308次方 到 1.79769e+308表示1.79768乘以10的308次方 之间的数据
第4个回答  2010-07-25
2.22507e-308表示2.22507乘以10的-308次方

1.79769e+308表示1.79768乘以10的308次方