Пространства имён
Варианты
Действия

std::ios_base::setf

Материал из cppreference.com
< cpp‎ | io‎ | ios base

 
 
Библиотека ввода/вывода
Манипуляторы ввода/вывода
Функции print (C++23)
Ввод/вывод в стиле C
Буферы
(устарело в C++98)
Потоки
Абстракции
Файловый ввод/вывод
Ввод/вывод строк
Ввод/вывод массивов
(устарело в C++98)
(устарело в C++98)
(устарело в C++98)
Синхронизированный вывод
Типы
Интерфейс категорий ошибок
(C++11)
 
std::ios_base
Функции-члены
Форматирование
Оригинал:
Formatting
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
ios_base::setf
Языки
Оригинал:
Locales
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Внутренние расширяемый массив
Оригинал:
Internal extensible array
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Разное
Оригинал:
Miscellaneous
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Член классов
Оригинал:
Member classes
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Член типов
Оригинал:
Member types
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
 
fmtflags setf( fmtflags flags );
(1)
fmtflags setf( fmtflags flags, fmtflags mask );
(2)

Устанавливает флаги форматирования, которые заданы параметрами.

1) Устанавливает заданные флаги форматирования. По существу, выполняется следующая операция fl = (fl & flags) где fl определяет состояние внутренних флагов форматирования.

2) Очищает флаги форматирования под mask, и среди очищенных флагов устанавливает те, которые заданы в flags. По существу, выполняется следующая операция fl = (fl & ~mask) | (flags & mask) где fl определяет состояние внутренних флагов форматирования.

Содержание

[править] Параметры

flags, mask новые настройки форматирования. mask определяет, какие флаги могут быть изменены, flags определяет, какие флаги из тех, которые будут изменены должны быть установлены (остальные будут удалены). Оба параметра могут быть комбинацией из следующих констант:
Константа Описание
dec использовать десятичное основание для ввода/вывода целых чисел (см. std::dec)
oct использовать восьмеричное основание для ввода/вывода целых чисел (см. std::oct)
hex использовать шестнадцатеричное основание для ввода/вывода целых чисел (см. std::hex)
basefield dec | oct | hex. Используется для операций маскирования
left выравнивать по левому краю (добавлять заполняющие символы справа (см. std::right))
right выравнивать по правому краю (добавлять заполняющие символы слева (см. std::left))
internal выравнивать по ширине (добавлять заполняющие символы между (см. std::internal))
adjustfield left | right | internal. Используется для операций маскирования
scientific генерировать числа с плавающей запятой с использованием научной нотации, или в шестнадцатеричной нотации, если включен fixed (см. std::scientific)
fixed генерировать числа с плавающей запятой с использованием фиксированной нотации, или в шестнадцатеричной нотации, если включен scientific (см. std::fixed)
floatfield scientific | fixed. Используется для операций маскирования
boolalpha вставлять и извлекать тип bool в буквенно-цифровом формате (см. std::boolalpha)
showbase генерировать префикс, указывающий основание, для целых чисел, требовать знак валюты для валютного ввода/вывода (см. std::showbase)
showpoint всегда генерировать символ десятичного разделителя для вывода чисел с плавающей запятой (см. std::showpoint)
showpos генерировать символ + для вывода неотрицательных чисел (см. std::showpos)
skipws пропускать ведущие пробелы перед всеми операциями ввода (см. std::skipws)
unitbuf очищать вывод после каждой операции вывода (см. std::unitbuf)
uppercase заменять все буквы нижнего регистра буквами верхнего регистра во всех операциях ввода/вывода (см. std::uppercase)


[править] Возвращаемое значение

флаги форматирования перед вызовом функции

[править] Пример

#include <iostream>
#include <iomanip>
 
const double PI = 3.1415926535;
 
int main() 
{
    const int WIDTH = 15;
 
    std::cout.setf(std::ios::right);  //equivalent: cout << right;
    std::cout << std::setw(WIDTH/2) << "radius"
              << std::setw(WIDTH) << "circumference" << '\n';
 
    std::cout.setf(std::ios::fixed);
    for (double radius = 1; radius <= 6; radius += 0.5) {
        std::cout << std::setprecision(1) << std::setw(WIDTH/2) 
                  << radius
                  << std::setprecision(2) << std::setw(WIDTH) 
                  << (2 * PI * radius) << '\n';
    }
}

Вывод:

radius  circumference
    1.0           6.28
    1.5           9.42
    2.0          12.57
    2.5          15.71
    3.0          18.85
    3.5          21.99
    4.0          25.13
    4.5          28.27
    5.0          31.42
    5.5          34.56
    6.0          37.70

[править] См. также

управляет флагами форматирования
(public функция-элемент) [править]
сбрасывает заданные флаги форматирования
(public функция-элемент) [править]