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

Интересное поведение cin.getline(); - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проблема с очисткой памяти http://www.cyberforum.ru/cpp-beginners/thread359177.html
Здравствуйте! Помогите пожалуйста исправить проблему с очисткой памяти в void memfree(). Заранее спасибо. #include "stdafx.h" #include <windows.h> #include "resource.h" #include <string> #define MAXPOINTS 1000 int ko,key1=0; int kolreb;
C++ дайте наводку, программисты и математики, как делать задачу подобного типа Условие задачи: Найти максимальное значение, которое может быть представлено при использовании типа unsigned char :pardon: P.S.: Нужно написать соответствующую программу http://www.cyberforum.ru/cpp-beginners/thread359171.html
Невозможно разрешить идентификатор... C++ WinAPI
Не понимаю в чем проблема. Начал изучать WinAPI, ну вообщем по учебе. И решил скомпилисть пример из книжки, попробовать. Написал как там, но выдает ошибки(пишу в NetBeans): Невозможно разрешить идентификатор DWORD Невозможно разрешить идентификатор GetLogicalDriveStringsA Невозможно разрешить идентификатор nBufferLength ... код:#include <cstdlib> #include <iostream> #include <winbase.h>
Трабла с прогой C++
"дан радиус окружности. Найти длину окружности и площадь круга" как вычислить подобную задачу на С. Жду ответа. С уважением.
C++ Создать динамический массив, заполнить его и вывести http://www.cyberforum.ru/cpp-beginners/thread359119.html
Задача такая, создать динамический массив, заполнить его и вывести. Набросал код #include <iostream> using namespace std; class boolArray { private: int size; bool **arr;
C++ Собственный класс-итератор Создаю класс-итератор для класса Студенты. Сам класс студенты: #ifndef STUDENTS_H #define STUDENTS_H #include <string> using std::string; #include <iostream> подробнее

Показать сообщение отдельно
grizlik78
Эксперт С++
 Аватар для grizlik78
1887 / 1419 / 103
Регистрация: 29.05.2011
Сообщений: 2,967
02.10.2011, 00:12     Интересное поведение cin.getline();
Цитата Сообщение от Slimmy Посмотреть сообщение
Вопрос нижеследующий: почему при повторении двух getline'ов подряд, первый автоматически пропускается?
.
Первый будет пропускаться, даже если будет единственным. Этот вопрос регулярно поднимается здесь.
Происходит это после ввода числа оператором >>
Этот оператор при считывании числа извлекает из потока только цифры, а символ перевода строки остаётся в потоке. Его и считывает первый getline(), принимая пустую строку.
Можно вручную извлечь один символ из потока с помощью функции cin.get() или cin.ignore(). А можно просто не смешивать ввод через >> и ввод через getline().

sync() можно, но это не сработает в linux
 
Текущее время: 12:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru