float和double类型的区别

inti1=123;inti2=456;doubled1=(i1+i2)*1.2;floatf1=(float)((i1+i2)*1.2)比如这个,为什么((i1+i2)... int i1 = 123;
int i2 = 456;
double d1 = (i1+i2)*1.2;
float f1 = (float)((i1+i2)*1.2)

比如这个,为什么((i1+i2)*1.2)的结果是double类型的,需要强制转换成float类型。
不是一半浮点数的默认类型是float吗?
展开
 我来答
写在枫叶上的故事
2019-05-08 · TA获得超过2.6万个赞
知道答主
回答量:164
采纳率:0%
帮助的人:2.3万
展开全部

float和double类型的区别如下:

1、变量类型不同

float属于单精度型浮点数据。

double属于双精度型浮点数据。

2、指数范围不同

float的指数范围为-127~128。

double而double的指数范围为-1023~1024

3、表达式指数位不同

float的表达式为1bit(符号位)+8bits(指数位)+23bits(尾数位)

double的表达式为1bit(符号位)+ 11bits(指数位)+ 52bits(尾数位)

4、占用内存空间不同

float占4个字节(32位)内存空间,其数值范围为3.4E-38~3.4E+38。

double占8 个字节(64位)内存空间,其数值范围为1.7E-308~1.7E+308。

5、有效位数不同

float只能提供七位有效数字。

double可提供16位有效数字。

参考资料来源:百度百科——浮点型数据

great佯装埋倦
推荐于2018-02-21 · 知道合伙人数码行家
great佯装埋倦
知道合伙人数码行家
采纳数:3258 获赞数:24606
目前就读于重庆邮电大学移动学院,电子信息工程系。

向TA提问 私信TA
展开全部
  double 和 float 的区别是double精度高,有效数字16位,float精度7位。但double消耗内存是float的两倍,double的运算速度比float慢得多,C语言中数学函数名称double 和 float不同,不要写错,能用单精度时不要用双精度(以省内存,加快运算速度)。
  类型 比特数 有效数字 数值范围
  float 32 6-7 -3.4*10(-38)~3.4*10(38)
  double 64 15-16 -1.7*10(-308)~1.7*10(308)
  long double 128 18-19 -1.2*10(-4932)~1.2*10(4932)
  简单来说,Float为单精度,内存中占4个字节,有效数位是7位(因为有正负,所以不是8位),在我的电脑且VC++6.0平台中默认显示是6位有效数字;double为双精度,占8个字节,有效数位是16位,但在我的电脑且VC++6.0平台中默认显示同样是6位有效数字。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
在下是懂你先生
2012-05-01 · TA获得超过839个赞
知道小有建树答主
回答量:181
采纳率:100%
帮助的人:104万
展开全部
java中有这样一个规则:
只要带有小数点的数,它的默认类型就是dobule类型
如: num=2.4;//这个num的数据类型是double
num1=2.4f;//那么这个num1的数据类型就是float类型
拿你的例子来说:
d1 = (i1+i2)*1.2;//这一步,d1的默认数据类型是:double
当用float类型的数据接收的时候,就需要强制转化-->把d1这个double类型的数据强制转化为flaot类型.
希望能帮到你,我说的不明白的话,再问
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
塔歌吹0Et
2012-05-01
知道答主
回答量:9
采纳率:0%
帮助的人:1万
展开全部
float是单精度浮点型,double是双精度浮点型。float到double不需要转换,编译会自动进行转化。但从double到float就需要强制转换。不过没有特殊状况最好不要这样做,因为这样可能会的到不是你想要的结果。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
没有响应m2
推荐于2017-10-12 · TA获得超过8386个赞
知道大有可为答主
回答量:7579
采纳率:33%
帮助的人:3418万
展开全部
默认的浮点数都是double 只有在数组后边加上f才是 float的
float f=12.2f;
这是定义一个float类型的数据
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式