首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在C++中打印精度为6位的浮点值?

如何在C++中打印精度为6位的浮点值?
EN

Stack Overflow用户
提问于 2013-01-02 18:44:10
回答 1查看 3.1K关注 0票数 0

默认情况下,我会得到4位数的精度,当我使用setprecision(6)时,变量的最后几位会像1/3=0.333369一样随机出现。

EN

回答 1

Stack Overflow用户

发布于 2013-01-02 18:50:55

float的精度约为7位小数,因为它使用24位二进制数来存储数字的位数。就输出而言,setprecision(6)可以满足您的所有要求。

您可能会失去精度,例如,通过减去两个具有相似值的数字并打印结果。快速的解决方案是将计算更改为使用doublelong double。但是要保证浮点结果的精度,你需要了解FP是如何工作的,并分析你的公式是如何计算的。

参见What Every Computer Scientist Should Know About Floating-Point Arithmetic

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14120646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档