C语言double和int有什么区别?各个表示范围是多少?
1个回答
2022-12-14 · 百度认证:北京惠企网络技术有限公司官方账号
关注
展开全部
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型,但是倒过来就不行,必须强制转。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询