在我 之前的问题 中,我正在使用 cout
打印 double
,当我没有预料到它时,它得到了四舍五入。如何使用全精度制作 cout
打印 double
?
原文由 Jason Punyon 发布,翻译遵循 CC BY-SA 4.0 许可协议
在我 之前的问题 中,我正在使用 cout
打印 double
,当我没有预料到它时,它得到了四舍五入。如何使用全精度制作 cout
打印 double
?
原文由 Jason Punyon 发布,翻译遵循 CC BY-SA 4.0 许可协议
最好的选择是使用 std::setprecision
,解决方案是这样的:
# include <iostream>
# include <iomanip>
int main()
{
double a = 34.34322;
std::cout<<std::fixed<<a<<std::setprecision(0)<<std::endl;
return 0;
}
注意:您不需要使用 cout.setprecision
来执行此操作,我在 std::setprecision
处填写 0,因为它必须有一个参数。
原文由 CPP_is_no_STANDARD 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答1.6k 阅读✓ 已解决
您可以直接在
std::cout
上设置精度并使用std::fixed
格式说明符。您可以
#include <limits>
获得浮点或双精度的最大精度。