Manipulator | Effects |
---|---|
showpoint | Generates a decimal point character shown in floating-point output. The number of digits after the decimal point corresponds to the used precision. |
noshowpoint | Trailing zeroes after the decimal point are not printed. If there are no digits after the decimal point, the decimal point is not printed (by default). |
fixed | Output in fixed point notation |
scientific | Output in scientific notation |
setprecision (int n) | Sets the precision to n. |
Manipulator | Effects |
---|---|
int precision (int n); | Sets the precision to n. |
int precision() const; | Returns the used precision. |
The key word const within the prototype of precision() signifies that the method performs only read operations.
#include <iostream> using namespace std; int main() /*from w w w . j av a 2s .c om*/ { double x = 12.0; cout.precision(2); // Precision 2 cout << " By default: " << x << endl; cout << " showpoint: " << showpoint << x << endl; cout << " fixed: " << fixed << x << endl; cout << " scientific: " << scientific << x << endl; return 0; }
Floating-points are displayed to six digits by default.
Decimals are separated from the integral part of the number by a decimal point.
Trailing zeroes behind the decimal point are not printed.
If there are no digits after the decimal point, the decimal point is not printed (by default).
cout << 1.0; // Output: 1 cout << 1.234; // Output: 1.234 cout << 1.234567; // Output: 1.23457
The last example shows that the seventh digit is rounded.
Very large and very small numbers are displayed in exponential notation.
cout << 1234567.8; // Output: 1.23457e+06