Печатать эту главуПечатать эту главу

Приложение к главе 1

Команды, управляющие выводом

Для работы большинства команд, приведенных ниже, требуется подключение библиотеки iomanip.

Флаги форматирования в С++

Флаг

Назначение

Пример

Результат

boolalpha

Вывод логических величин в текстовом виде (true, false)

cout.setf(ios::boolalpha);

bool log_false = 0, log_true = 1;

cout << log_false << endl;

cout << log_true << endl;

false

true

showpos

Вывод знака плюс (+) для положительных чисел

cout.setf(ios::showpos);

int value = 15;

cout << value << endl;

+15

scientific

Вывод вещественных чисел в экспоненциальной форме

cout.setf(ios::scientific);

double value = 1024.165;

cout << value << endl;

1.024165e+003

fixed

Вывод вещественных чисел в фиксированной форме (6 цифр после запятой)

cout.setf(ios:: fixed);

double value = 1024.165;

cout << value << endl;

1024.165000

right

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

cout.width(20);

cout << "Hello world";

left 

Выравнивание по левой границе. Сначала необходимо установить ширину поля, которая должна быть заведомо большей, чем длина выводимой строки

cout.setf(ios::left);

cout.width(20);

cout << "Hello" << "world";

Манипуляторы форматирования в С++

Флаг

Назначение

Пример

Результат

endl

Переход на новую строку при выводе

cout << "Hello" << endl << "world";

Hello
world

boolalpha

Вывод логических величин в текстовом виде (true, false)

bool b = 1;
cout << boolalpha << b << endl;

true

noboolalpha

Вывод логических величин в числовом виде (true, false)

 bool b = 1;
 cout << noboolalpha << b << endl;

1

showpos

Вывод знака плюс (+) для положительных чисел

int value = 255;
cout << showpos << value << endl;

+255

noshowpos

Не выводить знак плюс (+) для положительных чисел (по умолчанию)

int value = 255;
cout << noshowpos << value ;

255

scientific

Вывод чисел с плавающей точкой в экспоненциальной форме

double value = 1024.165;
cout << scientific << value;

1.024165e+003

fixed

Вывод чисел с плавающей точкой в фиксированной форме (6 цифр после запятой)

double value = 1024.165;
cout << fixed << value;

1024.165000

setw(int number)

Установить ширину поля, где number — количество позиций, символов (выравнивание по умолчанию по правой границе)

cout << setw(20) << "Hello world";

right

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

cout << setw(20) << right;
cout << "Hello world";

left 

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

cout << setw(20) << left;
cout << "Hello" << "world";

 

setprecision (int count)

Задает количество знаков после запятой, где count — количество знаков после десятичной точки

cout << fixed;
cout << setprecision(3);
cout << (13.5 / 2);

6.750

setfill (char symbol)

Установить символ-заполнитель. Если ширина поля больше, чем выводимая величина, то свободные места поля будут наполняться символом symbol

cout << setfill('0');
cout << setw(4) << 15;

0015