setf()

#include <iostream>
fmtflags setf(fmtflags flags);
fmtflags setf(fmtflags flags1, fmtflags flags2);

Описание

Устанавливает флаги форматирования

Функция является членом класса ios

Функция setf() устанавливает флаги форматирования, связанные с потоком.

Первая версия функции setf() устанавливает флаги форматирования, заданные параметром flags.(На все остальные флаги функция не действует.) Например, чтобы установить флаг showpos для потока cout, можно использовать следующий оператор. cout.setf(ios::showpos);

При необходимости установки сразу нескольких флагов их значения можно объединить с помощью оператора ИЛИ.

Важно понимать, что обращение к функции setf() делается относительно конкретного потока. Нет никакого смысла вызывать функцию setf() саму по себе, без указания потока. Другими словами, нет никакого смысла в глобальном статусе флагов форматирования среды C++. Каждый поток индивидуально поддерживает собственную информацию о статусе форматирования.

Вторая версия функции setf() действует только на флаги, которые задаются параметром flags2. Соответствующие флаги сначала сбрасываются, а затем устанавливаются в соответствии с флагами, заданными параметром flags1. Важно понимать, что даже если параметр flagsl содержит другие флаги, воздействию подвергнутся только те из них, которые заданы параметром flags2.

Обе версии функции setf() возвращают предыдущие установки флагов форматирования, связанные с потоком.