С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
#1

Как сделать, чтобы при вводе в консоли <Enter> не переводил курсор на начало следующей строки? - C++

14.05.2012, 14:42. Просмотров 1883. Ответов 4
Метки нет (Все метки)

Есть некий ввод символов, организованный через cin.get(char &), или через cin.get(char &, int), или через cin.getline(char &, int). Выведена на консоль, например, фраза: "Введите то-то: ". Дальше мигает курсор (приглашение на ввод). Если вводится не то, что нужно, то на следующей строке выводится то же:"Введите то-то: " и курсор на ввод. Всё получается кроме одного: если просто нажать <Enter>, то курсор на ввод переходит на начало следующей строки. Как сделать чтобы этого не происходило? То есть, при нажатии на <Enter>, или курсор оставался на том же месте, или на следующей строке выводилось то же : "Введите то-то: " и курсор на ввод.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2012, 14:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как сделать, чтобы при вводе в консоли <Enter> не переводил курсор на начало следующей строки? (C++):

Как сделать, чтобы сочетание клавиш 'enter'+'space' выходили из консоли - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main() { char c; cout&lt;&lt;&quot;test\n&quot;; ...

Как определить конец строки при вводе с консоли? - C++
Необходимо считать строку неизвестной длины с консоли посимвольно (используется cin). Как определить, что ввод строки закончен, то есть...

Как сделать, чтобы диалоговое окно не закрывалось при нажатии клавиши ENTER? - C++
Как сделать, чтобы диалоговое окно не закрывалось при нажатии клавиши ENTER? (если можно то, код)

Как сделать так, что бы длинна строки сама менялась при вводе строки? - C++
Есть такой код #include &quot;stdafx.h&quot; #include &quot;enter.h&quot; #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;iostream&gt; #include...

Как в потоковом вводе перейти на чтение следующей строки? - C++
Подскажите пожалуйста, как в потоковом вводе из текстового файла перейти на чтение следующей строки: ifstream filein(...) filein &gt;&gt;...

Как сделать, чтобы выдавал ошибку при вводе букв и элемента меньшего, чем 0? - C++
Т.е. пользователь ввёл данные, если это текст, то выдаётся ошибка. Если пользователь ввёл число меньше нуля, то ошибка?

4
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
15.05.2012, 16:57  [ТС] #2
Вопрос решён.
0
LpiL
0 / 0 / 0
Регистрация: 24.03.2013
Сообщений: 1
27.03.2013, 17:16 #3
как
0
saaresto
9 / 9 / 0
Регистрация: 22.03.2013
Сообщений: 23
27.03.2013, 18:05 #4
Судя по всему, проверкой на символ \n
Или нет?
0
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
27.03.2013, 19:22  [ТС] #5
Цитата Сообщение от saaresto Посмотреть сообщение
Судя по всему, проверкой на символ \n
Или нет?
Да.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
char ch;
do
{
    for ( ; ; )
    {
        cout << "Input: ";
        cin.get(ch);
        if (ch == '\n') continue;
        cin.clear();
        while (cin.get() != '\n');
        break;
    }
} while (ch != 'a');
0
27.03.2013, 19:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2013, 19:22
Привет! Вот еще темы с ответами:

Как сделать, чтобы при вводе двумерного массива он сразу отображался в виде таблицы? - C++
Желательно использовать оператор setw().

Как остановить цикл при вводе enter? - C++
#include &lt;iostream&gt; using namespace std; int main() { for (;;) { //как остановить цикл при вводе enter ...

Сделать так, чтобы ввод не происходил при нажатии Enter - C++
Как сделать что бы cout &lt;&lt; (letter); не срабатывал после нажатия enter? Когда вставляю перед ним cin.ignore('/n'); цикл перестает...

Скопировать второе слово каждой строки в начало следующей строки - C++
Привет, прошу помощи! Заранее спасибо! Индивидуальное задание: Скопировать второе слово каждой строки в начало следующей строки ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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