如何解决具有双精度的字符串表示
我有一个双1.4291400000000001 我想要一个双精度字符串表示。 什么是获得1.42914的最佳/标准方法解决方法
关于什么:
std::stringstream ss;
ss << std::fixed << std::setprecision( N ) << double_number;
// ss.str() gives you the string
, 不能保证double
就是这个值:1.4291400000000001
。它可以大于或小于该值。更不像是那样。
在这个事实之后,我可以说没有最好的方法从中得到3英镑。您可能会得到1.42913
,因为实际的双精度值可能是:1.4291399999999999
而不是上述值。
阅读此文章:每位计算机科学家都应了解的浮点算法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。