| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [C++] Оператор выбора и cin.get() |
| Автор: DFooz 2.11.2006, 22:27 | ||
| 1)Вот такой код. Почему cin.get() всегда возвращает 10? Ведь он должен возвращать код извлечённого из потока символа, а он всегда только 10? 2) Какой аналог в Си++ Паскалевской функции readkey?
|
| Автор: Kuvaldis 2.11.2006, 23:30 | ||
| DFooz, Проблема в том, что метод getline() считвывает из входного потока данные до того момента,пока не встретит символ ВВОДА '\n'. Причем данный символ остается в потоке. Можно считать этот символ при помощи лишнего вызова get(). Но это не лучший вариант: придется в цикле считывать посимвольно до тех пор, пока не прочитаем "неввод". Лучше сбросить буфер ввода. т.е. перед строкой 33 вставь код
Ты же буфер не сбрасываешь, и у тебя читается то, что первое в буфере - 10 2. Аналог keypressed #include <conio.h> getch(); еще хороший вариант #include <stdlib.h> system("pause"); |
| Автор: DFooz 3.11.2006, 00:12 |
| 1)getline() разве '\n' из потока не убирает? Все, разобрался, спасибо!!!: то поток не опустошал, то коды неправильно поставил... как всегда 2)спасибо за эти, потом бы про них тоже спросил=), но именно аналог ReadKey какой в Си++? т.е. чтобы он не отмечал просто нажатие клавиши, а именно мог сразу код нажатой выдать, без нажатия Enter. |
| Автор: Kuvaldis 3.11.2006, 00:38 | ||
DFooz,
|
| Автор: DFooz 3.11.2006, 00:42 |
| спасибо!!!!!!!!! |