std::setprecision的使用(c++浮点数控制位数)

function

std::setprecision

/*unspecified*/ setprecision (int n);
Set decimal precision
Sets the decimal precision to be used to format floating-point values on output operations.

Behaves as if member precision were called with n as argument on the stream on which it is inserted/extracted as a manipulator (it can be inserted/extracted on input streams or output streams).

This manipulator is declared in header .

Parameters

n
New value for the decimal precision.

Return Value

Unspecified. This function should only be used as a stream manipulator (see example).

Example

intput

// setprecision example
#include      // std::cout, std::fixed
#include       // std::setprecision

int main () {
  double f =3.14159;
  std::cout << std::setprecision(5) << f << '\n';
  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;
}
Output:
3.1416
3.14159
3.14159
3.141590000

Data races

The stream object on which it is inserted/extracted is modified.
Concurrent access to the same stream object may introduce data races.

Exception safety

Basic guarantee: if an exception is thrown, the stream is in a valid state.

See also

http://www.cplusplus.com/reference/iomanip/setprecision/转至

你可能感兴趣的:(学习之路,学习笔记,c++)