logo search
шпоры по ООП

39.Простые манипуляторы для управления потоком

Манипуляторы являются функциями, которые можно включать в цепочку последовательных операций помещения и извлечения. Это удобный способ управления флагами потока. Однако, применение манипуляторов этим не ограничивается. Изменения, внесенные в поток манипулятором, сохраняются до следующего использования того же манипулятора, за исключением манипулятора setw.

Различают простые и параметризованные манипуляторы. Простые манипуляторы не требуют аргументов, для обращения к ним используется только имя манипулятора (имя соответствующей функции). К простым манипуляторам относятся:

ws - пропуск начальных пробелов при вводе (или эквивалентных им символов);

dec - вывод числа по основанию 10;

oct - вывод числа по основанию 8;

hex - вывод числа по основанию 16;

flush - принудительно записывает все выходные данные на соответствующее физическое устройство;

endl - помещает в выходной поток символ новой строки ('\n') и вызывает манипулятор flush;

ends - помещает в выходной поток нулевой символ ('\0'). Обычно используется для указания конца строки.

Пример:

int i;

cout << "Введите число:";

cin >> i;

if (!cin) cout << "Ошибочный ввод ..." << endl;

else

cout << "Отображение в различных форматах:" << endl

"Hex - " << hex << i << endl

"Oct - " << oct << i << endl

"Dec - " << dec << i << endl;