Шаг 491.
Библиотека STL. Ввод-вывод с использованием потоковых классов. Стандартные функции ввода-вывода. Форматирование. Общие параметры форматирования

    На этом шаге мы рассмотрим еще несколько параметров форматирования.

    Список форматных флагов завершается флагами skipws и unitbuf (таблица 1).

Таблица 1. Оставшиеся форматные флаги
Флаг Описание
skipws Автоматическое игнорирование начальных пропусков при чтении данных оператором >>
unitbuf Принудительный вывод содержимого буфера после каждой операции записи

    Флаг ios::skipws устанавливается по умолчанию; это означает, что по умолчанию некоторые операции чтения игнорируют начальные пропуски. Обычно этот флаг удобнее держать установленным. Например, вам не придется специально заботиться о чтении пробелов, разделяющих числа. С другой стороны, это означает, что вы не сможете читать пробелы оператором >>, потому что начальные пропуски всегда игнорируются.

    Флаг ios::unitbuf управляет буферизацией вывода. При установленном флаге ios::unitbuf вывод практически выполняется без буферизации - выходной буфер очищается после каждой операции записи. По умолчанию этот флаг не устанавливается. Исключение составляют потоки данных сеrr и wcerr, для которых этот флаг устанавливается в исходном состоянии.

    В таблице 2 представлены манипуляторы, используемые для управления дополнительными флагами.

Таблица 2. Манипуляторы для управления дополнительными форматными флагами
Манипулятор Описание
skipws Автоматическое игнорирование-начальных пропусков при чтении данных оператором >> (установка флага ios::skipws)
noskipws Обработка начальных пропусков при чтении данных оператором >> (сброс флага ios::skipws)
unitbuf Принудительный вывод содержимого буфера после каждой операции записи (установка флага ios::unitbuf)
nounitbuf Отмена принудительного вывода содержимого буфера после каждой операции записи (сброс флага ios::unitbuf)

    На следующем шаге мы рассмотрим интернационализацию.




Предыдущий шаг Содержание Следующий шаг