将单精度变量值赋予双精度变量类型double后数值丢失?
来源:3-8 浮点型案例
慕慕8212658
2020-04-13 00:49:27
控制台输出d的值不是我一开始赋予d的值。老师不是说double是比float大的么,小的往大的存应该没问题吧。。
求解答
1回答
好帮手慕阿慧
2020-04-13
同学你好,
1、float的精度小于double的精度,所以double能表示更多位的小数。这里不是丢失精度了,是更准确了。
2、看起来不一样其实是因为计算机底层是二进制,所以在表示数据时会有偏差,更精确之后的和原来的不一样了。这个差异是无法屏蔽的。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
相似问题