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 << '(';
           cout.width(4);
           cout << -12 << ")\n";

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

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

что выдаст

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

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


Назад  |  Вперёд


OtDiatlovaOU
К началу книги

Оформление и дизайн книги OtDiatlovaOU.
Вся книга, архив.