将处理后的浮点值类型转换为 int 会降低实际值

Typecasting processed float value to int reduces the actual value

本文关键字:int 类型转换 处理      更新时间:2023-10-16

在C++中,floor(9099.96 *100.0(给了我答案,就像909995一样。我期待909996。

我想不出

这里的解释。任何帮助将不胜感激。谢谢。

这是正确的结果:根据IEEE754计算器,9099.96的值表示为double中的9099.9599609375。乘以 100 后,你会得到909995.99609375.服用floor会给你909995

试试 ceil。它将始终舍入下一个最大的数字,在这种情况下,这将为您提供909996。您可能还想查看圆形函数。