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

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

Войти
Регистрация
Восстановить пароль
 
vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
#1

Как прервать поток ввода, введя определенный символ? - C++

08.12.2012, 16:14. Просмотров 832. Ответов 8
Метки нет (Все метки)

Доброго всем времени суток

C++
1
2
3
4
5
double d;
char c;
cin >> d;
cin >> c;
cout << c << d;
Я ввожу число, которое записывается в d, а затем ввожу символ '=', как сделать так чтобы при вводе '=' поток ввода закрывался, без нажатия Enter в конце ввода, и на экран выводилось сообщение?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2012, 16:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как прервать поток ввода, введя определенный символ? (C++):

Ввести определенный символ, обозначающий конец ввода - C++
В общем мне нужно после нажатия на определённый символ допустим это &quot;h&quot; срабатывало действия, и что бы если нажимается другой символ...

Какая функция объекта cin позволяет вставить символ в поток ввода? - C++
Какая функция обьекта cin позволяет вставить символ в поток ввода?Пример,если можно.

Как сравнить определенный символ двух строк? - C++
Здравствуйте. У меня есть стек, информационное поле представлено string. Моя задача состоит в отборе слов,начинающихся на опр. букву. ...

Как заменить определенный символ на номера попорядку? - C++
Извините ели не туда написал. Есть документ в нем 9000 адресов с символом n. Как этот сделать так, чтобы символы поменялись на номера по...

Как очистить поток ввода? - C++
std::istringstream iss(s1); idd&gt;&gt;a; iss.clear();; s1=s3; iss&gt;&gt;b надо чтоб s3 в b записалось, громадное число...

Как читает поток ввода cin ? - C++
Спасибо большое, разобрался. Возникли новые вопросы: 1) как читает поток ввода оператор cin ? Например: char a,b; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Croessmah
Эксперт CЭксперт С++
13226 / 7498 / 845
Регистрация: 27.09.2012
Сообщений: 18,417
Записей в блоге: 3
Завершенные тесты: 1
08.12.2012, 16:52 #2
Обработка нажатия клавиш-стрелок
1
vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
09.12.2012, 15:06  [ТС] #3
спасибо, да к сожалению прервать можно только нажав Enter, а использование getch() тут не совсем подходит
0
Croessmah
Эксперт CЭксперт С++
13226 / 7498 / 845
Регистрация: 27.09.2012
Сообщений: 18,417
Записей в блоге: 3
Завершенные тесты: 1
09.12.2012, 15:16 #4
Почему не подходит? Считывайте по одному символу в цикле, и если введен опредеенный символ, то выходите из цикла. Все считанные символы записываете в строку
0
vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
09.12.2012, 15:18  [ТС] #5
ну например если d = 123, то в массив запишется 3 числа, и как потом быть?
0
Croessmah
Эксперт CЭксперт С++
13226 / 7498 / 845
Регистрация: 27.09.2012
Сообщений: 18,417
Записей в блоге: 3
Завершенные тесты: 1
09.12.2012, 15:24 #6
Можно так же: сначала запрашиваем число, потом запрашиваем символ через getch().
Но, имхо, лучше все записывать в строку, а потом сделать разбор строки. Мне кажется, что это будет намного лучше.
0
vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
09.12.2012, 15:26  [ТС] #7
Цитата Сообщение от Croessmah Посмотреть сообщение
Можно так же: сначала запрашиваем число, потом запрашиваем символ через getch().
так не работает, поток , к сожалению, не закрывается без Enter, и следовательно до getch() дело не доходит...
ОК, спасибо за мысль с массивом попробую с ним....
0
Croessmah
Эксперт CЭксперт С++
13226 / 7498 / 845
Регистрация: 27.09.2012
Сообщений: 18,417
Записей в блоге: 3
Завершенные тесты: 1
09.12.2012, 15:30 #8
Да, действительно, что-то я забыл про enter. Если не ошибаюсь, то getch - это только для винды.
0
vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
09.12.2012, 15:32  [ТС] #9
к счастью мне как раз для нее родимой

спасибо еще раз =)
жаль, что через потоки нельзя, а то было бы красиво....
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2012, 15:32
Привет! Вот еще темы с ответами:

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

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

Введя числа с клавиатуры без ограничения их количества (конец ввода - число ноль), найти сумму положительных и произведение отрицательных чисел - C++
Помогите решить, пожалуйста. Введя числа с клавиатуры без ограничения их количества (конец ввода - число ноль), найти сумму...

Как сделать отступы или , чтобы входной поток(ввода) отдельно от вывода - C++
#include &lt;iostream&gt; #define MAX_N 100 using namespace std; class Stack { int st_size=0; int st_elements; ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
09.12.2012, 15:32
Ответ Создать тему
Опции темы

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