C语言double和int有什么区别?各个表示范围是多少?

如题所述

double是双精度实型数(小数),int为整型,整型[signed]int -2147483648~+2147483648,双精度double 1.7 x 10^(-308)~ 1.7 x 10^(+308) 。

1、int 有符号整数,根据系统(编译器)不同,有不同的范围,16bits系统(DOS系统):-(2^15)到(2^15-1),32bits系统:-(2^31)到(2^31-1),64bits:-(2^63)到(2^63-1)。如果是无符号整数unsigned int,那么16bits系统(DOS系统):0到(2^16-1),32bits:0到(2^32-1),64bits:0到(2^64-1)。

2、double为双精度浮点型,能准确到小数点后十二位,1.7 x 10^(-308)~ 1.7 x 10^(+308)。

3、因为所有的计算机语言,每个类型都向更精确的方向去自动转。比如说,int能自动转double型,但是倒过来就不行,必须强制转。

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网