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

setiosflags(ios::left) - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 40, средняя оценка - 4.78
Индустриальный
 Аватар для Индустриальный
1 / 1 / 0
Регистрация: 13.02.2010
Сообщений: 15
02.03.2010, 20:04     setiosflags(ios::left) #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int main()
{
    setlocale(LC_ALL, "Rus");
    cout << setiosflags(ios::left)<< setfill('.') << setw(10) << "Фамилия"
         << setfill('.') << setw(10) << "Имя"
         << setfill('.') << setw(15) << "Адрес"
         << setfill('.') << setw(12) << "Город\n";
         << setfill('.') << setw(10) << "Петров"
         << setfill('.') << setw(10) << "Василий"
         << setfill('.') << setw(15) << "Кленовая 16"
         << setfill('.') << setw(12) << "Питер\n"
         << setfill('.') << setw(10) << "Иванов"
         << setfill('.') << setw(10) << "Сергей"
         << setfill('.') << setw(15) << "Осиновая 3"
         << setfill('.') << setw(12) << "Находка\n"
         << setfill('.') << setw(10) << "Сидоров"
         << setfill('.') << setw(10) << "Иван"
         << setfill('.') << setw(15) << "Березовая 21"
         << setfill('.') << setw(12) << "Калиниград\n";
    cin.get();
    return 0;
}
почему то первая строка выравнивается по левому краю, остальные по правому....где ошибка:?!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2010, 20:04     setiosflags(ios::left)
Посмотрите здесь:

Вопрос по setiosflags() и double C++
C++ rotate left
C++ ios::app,ios::ate,различия
C++ setprecision() и setiosflags()
C++ setiosflags(ios::left)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
02.03.2010, 20:44     setiosflags(ios::left) #2
Потому что ты и делаешь только для одной строки
Индустриальный
 Аватар для Индустриальный
1 / 1 / 0
Регистрация: 13.02.2010
Сообщений: 15
02.03.2010, 23:01  [ТС]     setiosflags(ios::left) #3
C++
1
2
3
4
5
cout << setiosflags(ios::left) << setfill('.') << setw(10) << "Фамилия"
         << setfill('.') << setw(10) << "Имя"
         << setfill('.') << setw(15) << "Адрес"
         << setfill('.') << setw(12) << "Город\n"
         << setiosflags(ios::left) << setfill('.') << setw(10) << "Петров"
если так или подставлять под каждую строку, всё равно первая строка выравнивается по левому краю, остальные по правому
DenPro
Сообщений: n/a
06.11.2010, 01:10     setiosflags(ios::left) #4
Потому что неправильно делаешь, ты не задаешь окончание строки, а переводишь текст на следующую, в этом твоя ошибка.


#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
setlocale(LC_ALL, "Rus");
cout << setiosflags(ios::left)<< setfill('.') << setw(10) << "Фамилия"
<< setfill('.') << setw(10) << "Имя"
<< setfill('.') << setw(15) << "Адрес"
<< setfill('.') << setw(12) << "Город"<<"\n"
<< setfill('.') << setw(10) << "Петров"
<< setfill('.') << setw(10) << "Василий"
<< setfill('.') << setw(15) << "Кленовая 16"
<< setfill('.') << setw(12) << "Питер"<<"\n"
<< setfill('.') << setw(10) << "Иванов"
<< setfill('.') << setw(10) << "Сергей"
<< setfill('.') << setw(15) << "Осиновая 3"
<< setfill('.') << setw(12) << "Находка"<<"\n"
<< setfill('.') << setw(10) << "Сидоров"
<< setfill('.') << setw(10) << "Иван"
<< setfill('.') << setw(15) << "Березовая 21"
<< setfill('.') << setw(12) << "Калиниград"<<"\n";
cin.get();
return 0;
}
[/COLOR]
Yandex
Объявления
06.11.2010, 01:10     setiosflags(ios::left)
Ответ Создать тему
Опции темы

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