Для форматирования вывода можно установить несколько флагов, для этого используются функции-члены flags, setf, unsetf.
unsigned v =12345;
cout << "Before: " << v << endl;
cout.setf(cout.hex); //Модификация потока
cout << "After: " << v << endl;
Для форматирования можно подключить заголовочный файл Iomanip.h, тогда используем манипуляторы
cout << "In hexadecimal v == " << hex << v << endl;
cout << "In decimal v == " << dec << v << endl;
ends вставить нулевой завершающий символ в строку
endl начать новую строку
flush выполнить довывод в поток
oct 8-ричная система счисления
setbase(int n) установить систему счисления с основанием n
setfill(int c) использовать символ с для заполнения при выравнивании
setw(unt n) установить ширину поля
setprecision(int n) установить точность вывода значений после запятой
Можно писать свои собственные манипуляторы, включив заголовочный файл Iomanip.h и определив функцию ссылочного типа
ostream&.
ostream& bell(ostream &os) {
return os << "\a"; //код звонка
}
cout << bell << "Ding!";
Для выравнивания по правому краю целочисленных переменных можно задать: cout.width(8); но он не оказывает влияние на следующее выводимое значение.