C++ Программирование в среде С++ Builder 5



             

Форматирующие флаги


Флаги управления форматированием являются битовыми полями, хранящимися в переменной типа fmtflags (псевдоним int). Для их чтения и/или модификации могут применяться следующие функции-элементы класса ics:

  • int flags (), int flags (int). Без параметра возвращает текущее состояние флагов. При указанном параметре устанавливает новые значения флагов и возвращает их прежнее состояние.
  • int setf(int), long setf(int, int). Первая форма устанавливает флаги, биты которых установлены в параметре. Вторая форма модифицирует флаги, биты которых установлены во втором параметре. Значения этих флагов задаются первым параметром. Возвращает прежнее состояние всех флагов.
  • void unsetf(int). Сбрасывает флаги, биты которых установлены в параметре.
  • Помимо функций, для управления флагами можно пользоваться манипуляторами setiosflags (аналог setf() с одним параметром) и reset-iosflags (аналог unsetf ()).

    В таблице 9.3 описаны форматирующие флаги потоков.

    Таблица 9.3. Форматирующие флаги класса ios

    Флаг

    Описание

    internal

    Если установлен, при выводе чисел знак выводится на левом краю поля вывода, а само число выравнивается по правому краю поля. Промежуток заполняется текущим символом заполнения.

    dec

    Устанавливает десятичное представление чисел. Принимается по умолчанию.

    oct

    Устанавливает восьмеричное представление чисел.

    hex

    Устанавливает шестнадцатеричное представление чисел.

    showbase

    Если установлен, то при восьмеричном и шестнадцатеричном представлении чисел выводит индикатор основания (0 для восьмеричных и Ох для шестнадцатеричных чисел).

    showpoint

    Если установлен, для вещественных чисел всегда выводится десятичная точка.

    uppercase

    Если установлен, шестнадцатеричные цифры от А до F, а также символ экспоненты Е выводятся в верхнем регистре.

    boolalpfa

    Если установлен, булевы значения выводятся как слова “true/false”. В противном случае они представляются соответственно единицей и нулем.

    showpos

    Выводит + для положительных чисел.

    scientific

    Если установлен, вещественные числа выводятся в научной (экспоненциальной) нотации.

    fixed

    Если установлен, вещественные числа выводятся в десятичном формате (с фиксированной точкой).

    unitbuf

    Если установлен, поток сбрасывается после каждой операции передачи.

    <


    Содержание  Назад  Вперед