Помимо прямой установки или очистки флагов форматирования, существует еще один способ изменения параметров формата любого потока. Этот второй способ реализуется посредством использования специальных функций, называемых манипуляторами, которые можно включить в выражение ввода-вывода. Манипуляторы, определенные библиотекой iostream старого стиля, описаны в следующей таблице.
Манипулятор |
Назначение |
Функция |
dec |
Используется для представления десятичных целых |
Ввод-вывод |
endl |
Выводит символ новой строки и сбрасывает поток |
Вывод |
ends |
Вставляет в поток нулевой символ (' \0 ') |
Вывод |
flush |
Сбрасывает поток |
Вывод |
hex |
Используется для представления шестнадцатеричных целых |
Ввод-вывод
|
oct |
Используется для представления восьмеричных целых |
Ввод-вывод
|
resetiosflags (long f) |
Очищает флаги, заданные в переменной f |
Ввод-вывод |
setbase (int base) |
Устанавливает основание системы счисления равной значению base |
Вывод |
setfill (int ch) |
Устанавливает символ заполнитель равным значению переменной ch |
Вывод |
setiosflags (long f) |
Устанавливает флаги, заданные в переменной f |
Ввод-вывод |
setprecision (int p) |
Устанавливает количество цифр точности (после десятичной точки)
|
Вывод |
setw(int w) |
Устанавливает ширину поля равной значению переменной w Пропускает ведущие пробельные символы |
Вывод |
ws |
Пропускает ведущие пробельные символы |
Ввод |
Для получения доступа к манипуляторам, принимающим параметры, например setw(), необходимо включить в свою программу заголовочный файл iomanip.h.