获取cout的精度

Get precision of cout

本文关键字:精度 cout 获取      更新时间:2023-10-16

我可以使用设置cout输出的精度

cout.precision(precision_value);

我如何获得精度值cout已经使用了这个值?我在cout描述中找不到任何其他相关函数。

我面临的相关问题是,如何仅更改代码某个部分的cout精度(因此需要在之后将其重置为之前的值)。

我试过:

//save original cout flags
std::ios_base::fmtflags coutFlags = cout.flags();
cout.precision(1);
cout.setf(ios::fixed);
 // code
cout.flags(coutFlags);

但这行不通。

函数重载。两个重载都返回在调用函数之前设置的精度。cout.precision()可能是您想要查询的内容。

保存并稍后设置:

auto old_precision = cout.precision(temp_precision);
// do stuff
cout.precision(old_precision);

使用函数precision()。

int main() {
  std::cout << std::cout.precision() << std::endl;
  return 0;
}