Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> cout.width, в другую сторону сдвиг 
:(
    Опции темы
Rickert
Дата 28.6.2007, 05:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 0
Всего: 52



Есть небольшая функция лога, котора должна формировать каждую строку примерно так:
Цитата
(<номер строки, 4 знака>):(<название функции>, знаков 15): <текст сообщения>\n

Хочется чтобы всё это было читабельно.
Для того, чтобы выделить определённое кол-во знаков под что-то использую функцию width. Применяю для cout и его же использую для вывода.
Но! Когда я, например, указываю 4 знака для номера строки, то ожидаю результата:
Цитата
4   : ...

А она делает:
Цитата
   4:...

пробелы устанавливаюся в начало, а не в конец. Как это поменять, а то очень неудобно?

Это сообщение отредактировал(а) Rickert - 28.6.2007, 05:50


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
evGenie
Дата 28.6.2007, 07:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 7.6.2007
Где: Челябинск

Репутация: нет
Всего: 1



adjustfield
PM ICQ   Вверх
Rickert
Дата 28.6.2007, 08:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 0
Всего: 52



Не нашёл информации. Можно подробнее и хорошо бы с примером.


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
Lomir
Дата 28.6.2007, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 30.1.2007
Где: Lithuania::Kaunas

Репутация: 1
Всего: 1



Код

std::cout << std::ios::right/*std::ios::left*/ << std::setw(10) << "Text" << "Text2" << '\n';

PM MAIL ICQ Skype   Вверх
Rickert
Дата 28.6.2007, 10:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 0
Всего: 52



Lomir, и что это ты такое непонятное проделал и ничего не получил?


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
bsa
Дата 28.6.2007, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Что здесь непонятного? Выставил выравнивание по правому краю, установил ширину 10 и вывел два текста. В итоге они должны были быть выровнены по правому краю 10-ти символьного поля.
PM   Вверх
Rickert
Дата 28.6.2007, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 0
Всего: 52



Ты попробуй сам свой код и посмотри то, о чём я просил.


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
zkv
Дата 28.6.2007, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 26
Всего: 92



Код

#include <iostream>
#include <iomanip>

int main()
{
    std::cout<<std::setw( 20 )<<std::left<< "Text" << std::setw( 20 )<<"Text2" << '\n'; //по левому
    std::cout<<std::setw( 20 )<<std::right<< "Text" << std::setw( 20 )<<"Text2" << '\n';//по правому
    std::cin.get();
}

так понятнее?
PM MAIL   Вверх
Rickert
Дата 29.6.2007, 04:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 0
Всего: 52



zkv, Благодарю!


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0771 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.