cout.precision(m);
cout << "specified number of digits pi_float = " << a_0 << endl;
在我进一步的计算中,当我尝试以
pi
精度打印double
时,仅打印m位。如何取消设置std::cout.precision
? 最佳答案
通常,您只需要将其设置为所需的任何内容即可,但是,如果您确实想还原以前的设置,则可以像这样保存并重新加载它:
std::streamsize prev_precision = std::cout.precision(); // save old precision
std::cout.precision(m);
// ... use the stream for whatever ...
std::cout.precision(prev_precision); // restore old precision
您也可以对其他格式设置(宽度,填充,科学计数法,boolalpha等)执行此操作。
我有一个开源的github project,如果您想要一个预包装的解决方案来涵盖所有内容(或者只是示例代码即可),就可以使用RAII来完成。
关于c++ - 如何取消std::cout的精度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58157012/