Бьерн Страуструп - Язык программирования С++. Главы 9-10
Страница 33. Выравнивание полей



10.4.1.5 Выравнивание полей

С помощью обращений к setf() можно управлять расположением символов
в пределах поля:

       cout.setf(ios::left,ios::adjustfield);     // влево
       cout.setf(ios::right,ios::adjustfield);    // вправо
       cout.setf(ios::internal,ios::adjustfield); // внутреннее

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

     cout.width(4);
     cout << '(' << -12 << ")\n";

     cout.width(4);
     cout.setf(ios::left,ios::adjustfield);
     cout << '(' << -12 << ")\n";

     cout.width(4);
     cout.setf(ios::internal,ios::adjustfield);
     cout << '(' << -12 << "\n";

что выдаст

       ( -12)
       (-12 )
       (- 12)

Если установлен флаг выравнивания internal (внутренний), то символы
добавляются между знаком и величиной. Как видно, стандартным является
выравнивание вправо.

 
« Предыдущая статья   Следующая статья »