Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2020, 13:52   #1
archerix
Форумчанин
 
Регистрация: 13.09.2019
Сообщений: 119
По умолчанию Обработка исключения

Детский вопрос Мне надо ввести в программу с клавиатуры число в целую переменную, и хочется этот момент защитить от дурака - если ввести букву, программа, понятное дело, вылетает. Пробую try ... catch, но что-то помогает не очень

Код:
try
    {   cin >> ichoice;  }
catch (...)
    {   ichoice=0;       }

    cout << ichoice;
Печатаю для проверки содержимое ichoice, таки 0. Не могу понять - формально вылета нет, но дальше вся работа программы идет вразнос. А если просто ввести 0, все работает.

Может, есть какие-то другие способы отследить этот ввод, кроме try ... catch?

Последний раз редактировалось archerix; 18.01.2020 в 13:55.
archerix вне форума Ответить с цитированием
Старый 18.01.2020, 14:34   #2
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Используйте форматированный ввод.
Пара ссылок с примерами:
Функции стандартного ввода/вывода (printf, scanf)
Обзор средств ввода-вывода в C++
I am not a wizard, I am just learning.
Desc вне форума Ответить с цитированием
Старый 19.01.2020, 04:05   #3
archerix
Форумчанин
 
Регистрация: 13.09.2019
Сообщений: 119
По умолчанию

Забыл подписку на тему поставить Спасибо, надо будет посмотреть.

В принципе решил уже как-то вопрос - подумал, а зачем считывать именно в целую переменную? Можно считать в строку, проверить, что введено. Нужные варианты обработать, остальное проигнорировать.

Хотя работа try - catch оставила массу вопросов
archerix вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка исключения при введении в матрицу drako08 Общие вопросы C/C++ 0 13.11.2016 14:32
Обработка исключения в ValueListEditor cliv Компоненты Delphi 1 11.03.2013 14:25
Обработка ошибки исключения AlexDn Общие вопросы Delphi 2 18.02.2013 11:24
Обработка исключения из DLL libmysql.dll san4ezart Помощь студентам 2 28.08.2011 22:39
Обработка исключения в Delphi Костян Пират Общие вопросы Delphi 5 25.05.2009 17:38