Форум программистов, компьютерный форум CyberForum.ru

Форматирование вывода cout - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
VerDicT
0 / 0 / 0
Регистрация: 20.12.2011
Сообщений: 5
20.12.2011, 22:05     Форматирование вывода cout #1
Может не в ту ветку, но напишу здесь.

Задание из лаб.
Задача вывести города по левому краю, а их население - по правому.
Интересно то, что верхняя строка "Город Население" выводится правильно, а все последующие не принимают положение "лефт", а так и остаются по правому краю.
Код
#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
    long pop1 = 8425785, pop2 = 47, pop3 = 9761;
    cout
    << setw(25) << setiosflags(ios::left) << "Gorod" << setw(25) << setiosflags(ios::right) << "Naselenie" << endl << setfill('.')
    << setw(25) << setiosflags(ios::left) << "Moskva" << setw(25) << setiosflags(ios::right) << pop1 << endl
    << setw(25) << setiosflags(ios::left) << "Kirov" << setw(25) << setiosflags(ios::right) << pop2 << endl
    << setw(25) << setiosflags(ios::left) << "Ugrumovka" << setw(25) << setiosflags(ios::right) << pop3 << endl;
    return 0;
}

Собственно вопрос: это я тупой, или лыжи не едут? В чём дело, почему поток не форматируется по левому краю? Может я не правильно юзаю манипулятор setiosflags()?

Вот вывод (съехало из-за разной ширины символов):
Gorod Naselenie
...................Moskva..................8425785
....................Kirov.......................47
................Ugrumovka.....................9761
З.Ы. ОС линух убунту, среда Qt.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2011, 22:05     Форматирование вывода cout
Посмотрите здесь:

Форматирование поток ввода\вывода C++
C++ Форматирование вывода
C++ Форматирование строк. cout
Преобразовать массив цифр в строку для вывода на cout<< C++
cout, два стека, нет вывода из второго C++
странный порядок вывода cout C++
В чем разница std::cout и просто cout? C++
Вывод таблицы с помощью cout, форматирование, выравнивание C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 20:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru