【发布时间】:2012-07-08 09:00:47
【问题描述】:
我正在尝试将两个floats 相乘,如下所示:
float number1 = 321.12;
float number2 = 345.34;
float rexsult = number1 * number2;
我想看到的结果是 110895.582,但是当我运行代码时它只给我 110896。大多数时候我都遇到了这个问题。任何计算器都能为我提供所有小数的确切结果。我怎样才能达到这个结果?
编辑:这是 C 代码。我正在使用 XCode iOS 模拟器。
【问题讨论】:
-
这是 C 还是 Java?它可以来自您所展示的内容。
-
你应该使用
double而不是float。 -
您确定打印时不只是截断它吗?您如何看待获得的价值?
-
我也用过double,结果一样。
-
您只是将结果打印为 6 位数字。这是 C++ 中的默认设置,但您可以更改它。例如,在 C++ 中,
std::cout<<std::setprecision(16)<<x;
标签: c floating-point