我在自学C++,由于某种原因,"double“即使在std::setprecision之后也不会打印超过6个有效数字。我还需要做些别的事情吗?最新版本的代码块,如果有帮助的话。这是所有的代码:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
std::setprecision(9);
double A = 654321.987;
cout << A << endl;
return 0;
}发布于 2021-07-08 07:16:53
您需要将std::setprecision(9)的结果提供给std::cout。否则,它将无法知道它应用于哪个输出流(因此它将不会应用于任何内容)。
std::cout << std::setprecision(9) << A << std::endl;或者,如果你愿意,你可以单独做:
std::cout << std::setprecision(9);
std::cout << A << std::endl;https://stackoverflow.com/questions/68293886
复制相似问题