我正在开发一个在 linux 环境下运行的 C++ 应用程序。我需要存储一个小数点后 6 位的大值。我为此使用了双精度,但是在分配它之后,它不包含确切的值。它被四舍五入。
前任:
double dValue = 79447461534242.913072; //Assignement of value
但在这样做之后,每当我看到 dValue 的值时,它就像 79447461534242.906
有人可以让我知道为什么会发生这种情况并建议我正确的数据类型,它可以保持精确值而不会丢失任何精度。