Манипулятор noshowbase восстанавливает состояние cout,
#include <iostream>
int main()
{
int ival = 16;
double dval = 16.0;
cout << showbase;
cout << "ival: " << ival
<< " установлен oct: " << oct << ival << "\n";
cout << "dval: " << dval
<< " установлен hex: " << hex << dval << "\n";
cout << "ival: " << ival
<< " установлен dec: " << dec << ival << "\n";
cout << noshowbase;
}
Результат:
ival: 16 установлен oct: 020
dval: 16 установлен hex: 16
ival: 0x10 установлен dec: 16
Манипулятор noshowbase восстанавливает состояние cout, при котором основание системы счисления не выводится.
По умолчанию значения с плавающей точкой выводятся с точностью 6. Эту величину можно модифицировать с помощью функции-члена precision(int) или манипулятора setprecision(); для использования последнего необходимо включить заголовочный файл iomanip. precision() возвращает текущее значение точности. Например:
#include <iostream>
#include <iomanip>
#include <math.h>
int main()
{
cout << "Точность: "
<< cout.precision() << endl
<< sqrt(2.0) << endl;
cout.precision(12);
cout << "\nТочность: "
<< cout.precision() << endl
<< sqrt(2.0) << endl;
cout << "\nТочность: " << setprecision(3)
<< cout.precision() << endl
<< sqrt(2.0) << endl;
return 0;
}
После компиляции и запуска программа печатает следующее:
Точность: 6
1.41421
Точность: 12
1.41421356237
Точность: 3
1.41
Содержание Назад Вперед