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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Dz_ViTo
14 / 0 / 0
Регистрация: 14.07.2011
Сообщений: 51
#1

Проблема с cin.getline(); - C++

18.07.2011, 14:32. Просмотров 1398. Ответов 4
Метки нет (Все метки)

Есть вопрос по поводу использования cin.getline() после cin:

C++
1
2
3
cin>> n;
char c[buf];
cin.getline(c, buf);
Почему можно ввести данные только один раз, хотя по идее должны вводиться дважды
Не срабатывает, так как я хотел бы, функция cin.getline (), но почему?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.07.2011, 14:32     Проблема с cin.getline();
Посмотрите здесь:

getline(cin,a); - C++
Почемй когда я пишуgetline(cin,a); ничего не выполняется. Т.е. это не выполняется, а всё остальное выполняется! Зачем это вообще сделали в...

Getline() и cin - C++
Проблема заключается в том, что после ввода через cin , getline() не работает, точнее работает, но непонятно для меня. Я так предполагаю,...

cin.getline - C++
Здравствуйте. Есть вот программа: #include <iostream> // #include <cmath> // #include <conio.h> // //...

cin И getline - C++
#include <iostream> int main() { using namespace std; char n1; int n2;

getline(cin, ); - C++
Программа создаёт текстовый документ в который записывает название, автора и кол-во проданных экземпляров книги. Вот только возникла...

cin.getline() - C++
Помагите пожалуйсто.Ввести предложение. Вывести так, чтобы в каждой строке было написано одно слово предложения после пробела.с++ 2006...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
18.07.2011, 14:39     Проблема с cin.getline(); #2
Dz_ViTo, А цикл где чтобы дважды вводилось? После cin.getline поставьте cin.get(), cin.clear(). Или после ввода n. Точно не помню, но где-то нужно поставить.
nameless
Эксперт C++
334 / 298 / 14
Регистрация: 16.06.2009
Сообщений: 486
18.07.2011, 14:41     Проблема с cin.getline(); #3
Dz_ViTo, перед std::getline

C++
1
std::cin.ignore(std::cin.rdbuf()->in_avail());
Добавлено через 52 секунды
или

C++
1
std::cin.ignore(std::numeric_limits <std::streamsize>::max(), '\n');
Kastaneda
Форумчанин
Эксперт С++
4514 / 2856 / 228
Регистрация: 12.12.2009
Сообщений: 7,249
Записей в блоге: 1
Завершенные тесты: 1
18.07.2011, 14:42     Проблема с cin.getline(); #4
C++
1
2
3
(cin>> n).ignore();
char c[buf];
cin.getline(c, buf);
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.07.2011, 14:54     Проблема с cin.getline();
Еще ссылки по теме:

cin.getline - C++
есть простенькая программа #include &lt;iostream&gt; using namespace std; struct note { char fi; int number; int dob; }; int...

cin.getline скушал - C++
Вот ставлю чтоб ввёл 5 строк а даёт только 4, съедает 1 строку самую первую как это починить? char **s = new char* ; for(int i = 0; i...

Setlocal и cin.getline - C++
Привет Всем! У меня такая задачка. В начале программы setlocale(LC_ALL,&quot;rus&quot;) чтоб консоль русские буквы понимала, но по ходу программы мне...

Пропускается cin.getline - C++
Здравствуйте. Функция поиска void search() { char str; int arr_1, arr_2,col_rezult = 0; int on_name = 0; int on_autor =...

cin.getline() не выполняется - C++
В коде ниже не выполняется cin.getline(), просто пропускает и начинает выполнять следующую строку (0.png то что получается). form z; //...

Функция cin.getline() - C++
Имеется часть кода: void EditName(Account &amp;acc) { delete acc.name; char nam; cout&lt;&lt;&quot;Введите новое имя: &quot;; ...


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

Или воспользуйтесь поиском по форуму:
Dz_ViTo
14 / 0 / 0
Регистрация: 14.07.2011
Сообщений: 51
18.07.2011, 14:54  [ТС]     Проблема с cin.getline(); #5
Спасибо, cin.clear() и (cin>> n).ignore() помогло.
Кстати cin.getline() хавает "\n" после ввода n, поэтому второй раз ввод вроде как и был
Yandex
Объявления
18.07.2011, 14:54     Проблема с cin.getline();
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru