gpt4 book ai didi

floating-point - 为什么我看到一个 double 变量初始化为某个值,如 21.4 为 21.399999618530273?

转载 作者:行者123 更新时间:2023-12-04 05:05:02 24 4
gpt4 key购买 nike

double r = 11.631;
double theta = 21.4;

在调试器中,它们显示为 11.63100000000000021.399999618530273

我怎样才能避免这种情况?

最佳答案

这些 accuracy problems是由于 internal representation float ,您无能为力。

顺便说一下,在运行时打印这些值通常仍然会产生正确的结果,至少使用现代 C++ 编译器是这样。对于大多数操作,这不是什么大问题。

关于floating-point - 为什么我看到一个 double 变量初始化为某个值,如 21.4 为 21.399999618530273?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31381790/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com