std::setprecision (3) - Linux Manuals

std::setprecision: std::setprecision

NAME

std::setprecision - std::setprecision

Synopsis


Defined in header <iomanip>
/*unspecified*/ setprecision( int n );


When used in an expression out << setprecision(n) or in >> setprecision(n), sets the precision parameter of the stream out or in to exactly n.

Parameters


n - new value for precision

Return value


Returns an object of unspecified type such that if str is the name of an output stream of type std::basic_ostream<CharT, Traits> or an input stream of type std::basic_istream<CharT, Traits>, then the expression str << setprecision(n) or str >> setprecision(n) behaves as if the following code was executed:
str.precision(n);

Example


// Run this code


  #include <iostream>
  #include <iomanip>
  #include <cmath>
  #include <limits>
  int main()
  {
      const long double pi = std::acos(-1.L);
      std::cout << "default precision (6): " << pi << '\n'
                << "std::setprecision(10): " << std::setprecision(10) << pi << '\n'
                << "max precision: "
                << std::setprecision(std::numeric_limits<long double>::digits10 + 1)
                << pi << '\n';
  }

Output:


  default precision (6): 3.14159
  std::setprecision(10): 3.141592654
  max precision: 3.141592653589793239

See also


fixed
scientific
hexfloat
defaultfloat changes formatting used for floating-point I/O
             (function)


(C++11)
(C++11)
             manages decimal precision of floating point operations
precision (public member function of std::ios_base)