有没有办法设置 std::ostream 将输出的“最小”小数位数?
例如,假设我有两个要打印的未知双变量(为了便于说明,此处添加的值):
double a = 0;
double b = 0.123456789;
我可以设置我的最大小数精度,以便b
准确输出
std::cout << std::setprecision(9) << b << std::endl;
>>> 0.123456789
有没有办法设置“最小”精度(最小小数位数),同时保持“最大”精度,以便
std::cout << a << std::endl << b << std::endl;
产量
0.0
0.123456789
不是
0
0.123456789
?
谢谢!菲尔
对此的简短回答是“不”。流只有一种精度设置,无法区分最大和最小精度。感谢大家的慷慨建议!