相关疑难解决方法(0)

在C ++中没有** std :: fixed **的** std :: setprecision()**的作用是什么?

如教程http://www.cplusplus.com/reference/iomanip/setprecision/中所示

// setprecision example
#include <iostream>     // std::cout, std::fixed
#include <iomanip>      // std::setprecision

int main () {
  double f =3.14159;
  std::cout << std::setprecision(5) << f << '\n';  // prints 3.1416 and not 3.141459 why 
  std::cout << std::setprecision(9) << f << '\n';
  std::cout << std::fixed;
  std::cout << std::setprecision(5) << f << '\n';
  std::cout << std::setprecision(9) << f << '\n';
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

该生产线的std ::法院<<的std :: setprecision(5)不打印5个十进制数字,但之后的std ::固定设置,如预期的那样setprecision作品。这是为什么 ?。

没有std :: fixedstd :: …

c++ stl c++11

5
推荐指数
3
解决办法
3042
查看次数

即使在 setprecision 之后,“Double”也不会打印超过 6 位有效数字

我正在自学 C++,出于某种原因,即使在 std::setprecision 之后,“double”也不会打印超过 6 个有效数字。我需要做其他事情吗?如果有帮助的话,最新版本的代码块。这是所有的代码:

#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
    std::setprecision(9);
    double A = 654321.987;
    cout << A << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ codeblocks

0
推荐指数
1
解决办法
63
查看次数

标签 统计

c++ ×2

c++11 ×1

codeblocks ×1

stl ×1