![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 28.12.2018
Сообщений: 6
|
![]()
по замыслу моей программы после ввода 1 и -1 я должен ввести название книги после чего она должна записаться в вектор и вывестись оттуда на экран, по почему-то пропускается строчка getline(cin, name); и я возвращаюсь в главное меню
Код:
Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]()
Вычитайте перевод строки или cin.ignore, или что-то подобное перед вводом...
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 28.12.2018
Сообщений: 6
|
![]() |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]()
Давайте медленно:
1. cin буферизированн 2. когда вы что-то вводите в программу, например, 111 и жмете ентер - на самом деле в буфере будет лежать "111\n" 3. форматированный ввод ">>" не вычитывает "\n" 4. getline по умолчанию читает до "\n" 5. Дошло? |
![]() |
![]() |
![]() |
#5 |
Регистрация: 28.12.2018
Сообщений: 6
|
![]()
но я даже не ввожу данные в name или вы про int a, в name находится ""
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]()
Причем тут name или a?
Именно. Потому что А до "\n" там осталось "". |
![]() |
![]() |
![]() |
#7 |
Регистрация: 28.12.2018
Сообщений: 6
|
![]()
спасибо добрый человек, ввел cin.ignore(256, '\n'); и все заработало.
|
![]() |
![]() |
![]() |
#8 |
Регистрация: 05.01.2019
Сообщений: 4
|
![]()
Добрый день.
Не стал захламлять форум отдельной темой, поэтому решил написать здесь. Подскажите, пожалуйста, для чего в данном коде нужны эти символы, когда и без них компилирует тоже самое? Данный пример приведен в учебнике. |
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,714
|
![]()
Нормально компилируется - еще не значит, что будет выполняться как задумано. Без этих символов текст будет выводиться без кавычек " , а так - с ними.
см. http://all-ht.ru/inf/prog/c/func/printf.html таблица 4 |
![]() |
![]() |
![]() |
#10 |
Регистрация: 05.01.2019
Сообщений: 4
|
![]()
Спасибо!
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подскажите где ошибка | champion92 | Общие вопросы C/C++ | 2 | 09.12.2009 19:21 |
подскажите,где ошибка. | Pti44ka | Общие вопросы по Java, Java SE, Kotlin | 2 | 06.09.2009 02:02 |
Подскажите где ошибка | Ximer | Паскаль, Turbo Pascal, PascalABC.NET | 5 | 13.04.2009 13:41 |
Подскажите где ошибка?! | DJEDY | Общие вопросы C/C++ | 1 | 07.04.2009 16:33 |
Подскажите где ошибка? | lubafffka | Помощь студентам | 2 | 17.12.2008 19:02 |