首页| 论坛| 消息

回复: 如何将 9.975 正确地保留两位小数
#6 回 mengkun 的帖子 [dbzhang800 09-30 09:35]
mengkun:大佬您好,我测试了两种情况:
情形一:
....... (2020-09-30 08:36) 
这个Qt没有关系,和 浮点数在计算机中的表示方式有关。

绝大多数的小数,在计算机中无法用二进制精确表示。只能近似表示。而float和double只是有效位数不同。
比如10进制下用四舍五入的方式记录pi,你觉得保留7位小数和14小数时,二者大小关系如何?
#7 回 dbzhang800 的帖子 [mengkun 09-30 09:42]
dbzhang800:这个Qt没有关系,和 浮点数在计算机中的表示方式有关。

绝大多数的小数,在计算机中无法用二进制精确表示。只能近似表示。而float和double只是有效位数不同。
....... (2020-09-30 09:35) 
谢谢解惑!
#8 [angelus 09-30 10:53]
Qt库里缺少decmal这样的类型,不然计算和保留截断就可以方便了
#9 [littlebee 10-11 15:36]
QString::number(val,'g',2);

<< 1 2 >> (2/2)

回复 发表
主题 版块