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

cin.getline работает через раз - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Шаблоны функций и классов http://www.cyberforum.ru/cpp-beginners/thread400013.html
Нужносоздать шаблон функции возведения заданного числа в заданную степень (аналог функции pow() ). Шаблон класа Класс: матрица. Свойства: размеры, элементы матрицы. Методы: конструктор с...
C++ Дружественные функции и классы 1. Класс Пациент (имя, диагноз, рецепт, номер карты); 2. Класс Зав. отделением (имя) Описание предметной области – зав. отделением может менять номер карты пациента . Пожалуйсто помогите!!! ... http://www.cyberforum.ru/cpp-beginners/thread400010.html
ПЕРЕГРУЗКА ФУНКЦИЙ. ПЕРЕГРУЗКА ОПЕРАТОРОВ. C++
1. Функция нахождения самого длинного слова (два, три и четыре слова). 2. Описать класс одномерный массив (вектор) целых чисел. Перегрузить следующую операцию: > присвоить всем элементам вектора...
C++ Абстрактные базовые классы
Помогите решить пожалуйста!) Задание 1 . Создать базовый класс - фигура, и производные класс - круг, прямоугольник, трапеция. Определить виртуальные функции площадь, периметр и вывод на печать. ...
C++ Ввод имени файла с клавиатуры http://www.cyberforum.ru/cpp-beginners/thread399999.html
Всем привет! Хочу сделать так: int main() { char finame; printf("Enter the name of file: "); scanf_s("%s", &finame); FILE *f = fopen(finame, 'r'); if(!f) printf...
C++ Поставить в начало последовательности нули, а затем единицы 1 Последовательность a1; a2; ...; an состоит из нулей и единиц. Поставить в начало этой последовательности нули, а затем единицы. подробнее

Показать сообщение отдельно
ValeryLaptev
Эксперт С++
1041 / 820 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
06.12.2011, 11:35
GBIT, дело, скорее всего в буферизации. Хотя вы не написали КАК не работает getline, но думаю, дело было так:
Ввод переменной var целого типа заканчивается, когда вы нажимаете enter. Этот enter остается в буфере, и его кушает getline. А у нее по умолчанию enter тоже означает окончание ввода - вот и приплыли.
Надо после ввода целого буфер почистить. Способов много - например, введите один символ с помощью get
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru