![]() |
|
Модераторы: bsa |
![]()
|
|
| Riddik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 598 Регистрация: 2.12.2006 Репутация: нет Всего: нет |
Нужно считать строку из входного потока и положить её в объект string:
Если ввести строку в консоле из нескольких слов и пробелов, затем нажать Enter, то программа будет ждать повторного нажатия Enter, прежде чем выведет temp. Как это исправить? Т.е. нужно, чтоб как только осуществляется переход на новую строку, temp сохранял введённую строку. |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
ты точно тот же самый код привел? Думаю ты его изменил (или снова набрал). Сужу по тому факту - что этот код компилироваться не будет
Ну и функции main() нет покажи весь код, который компилировал и тестировал. Это сообщение отредактировал(а) azesmcar - 30.6.2009, 15:16 |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 10 Всего: 33 |
-------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| Riddik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 598 Регистрация: 2.12.2006 Репутация: нет Всего: нет |
Да уж опичатался)) Вы правы - проблема не в этом участке. Весь код приводить не буду - громоздкий.
В проблемном месте сначала в консоль вводиться целое число (его нужно сохранить в g2), затем переход на новую строку и вводятся слова через пробел, вот эти слова мне и нужно загнать в temp:
Не знаю, как осуществить это грамотно. Сейчас, наверное, в temp оказывается '\n'... |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
cin >> g2 >> skipws;
Добавлено через 1 минуту и 10 секунд в temp тебе надо загнать все слова или по одному? если по одному, то лучше использовать cin >> temp. |
|||
|
||||
| Riddik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 598 Регистрация: 2.12.2006 Репутация: нет Всего: нет |
Всю строчку )
skipws не помогает, в первой итерации цикла в temp "кладётся" '\n' |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
Riddik
честно говоря, не совсем понял в чем проблема. Конец дня все таки...можно пример неработающего кода? возможно тебе cin.ignore() нужен. |
|||
|
||||
| Riddik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 598 Регистрация: 2.12.2006 Репутация: нет Всего: нет |
Решил проблему без getline():
azesmcar, в этом месте и была проблема, вместо строки, в temp вводился символ перехода на новую строку в первой итерации. Под конец дня тяжко действительно) |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
ну и костыль! Тебе же сказали, используй ignore:
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |