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

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

Войти
Регистрация
Восстановить пароль
 
kuraiMuko
1 / 1 / 0
Регистрация: 11.01.2012
Сообщений: 32
#1

Обработку исключений при вводе некорректных данных - C++

19.01.2012, 23:21. Просмотров 1057. Ответов 3
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream> 
#include <signal.h>
 
using namespace std; 
class Student{public: string Status,Speciality,Name,LName;
                              string Write(){cout<<"Status: ";cin>>Status;
                                    if (Status != "Student"){throw Status;} 
                   }
                              string Display(){cout<<"Status: "+Status<<endl;} 
                  };
 
int main(){Student S; try{S.Write();} catch(string n){cerr<< "Error Status, try again"<<endl; S.Write();}
              system("pause"); S.Display(); system("pause");}
Вопрос, почему при попадании несколько раз на исключение программу выбрасывает? Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.01.2012, 23:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Обработку исключений при вводе некорректных данных (C++):

Обработка исключений при вводе некорректных данных - C++
День добрый, начал разбираться с исключениями, пока не совсем понимаю в чем их удобство и зачем они нужны, какие преимущества и т.д... но...

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

Почему при вводе числа программа работает нормально, а при вводе буквы уходит в бесконечный цикл? - C++
void mainmenu() { cout &lt;&lt; &quot;Введи число&quot; &lt;&lt; endl; cin &gt;&gt; choice; if (choice == 1) { cout &lt;&lt; &quot;Hello&quot; &lt;&lt; endl; } ...

защита от некорректных данных в конструкторе - C++
Здравствуйте, вот пишу довольно тривиальный класс о представлении треугольника. Поля класса - углы и стороны. По моему мнению для...

Ошибка при вводе данных - C++
Вот прогамма. Она просит ввести Ваше име, возраст и пол. Первые два считывает, а с последним прблеммы... Не ждёт ввод данных, и пускает...

Обработка данных при вводе - C++
При решении данной задачи обязательным условием является обработка входных данных сразу после их введения. Запрещается каким образом...

3
retmas
Жарю без масла
864 / 746 / 168
Регистрация: 13.01.2012
Сообщений: 1,702
19.01.2012, 23:52 #2
а как она должна вести себя при не перехваченном исключении по вашему?
0
kuraiMuko
1 / 1 / 0
Регистрация: 11.01.2012
Сообщений: 32
19.01.2012, 23:58  [ТС] #3
Цитата Сообщение от retmas Посмотреть сообщение
а как она должна вести себя при не перехваченном исключении по вашему?
при не перехваченном исключении оно просто выведет данные(display()), а но я хотел добиться зацикливании, т.е повтор и повтор запроса пока не будут введены правильные данные.
0
retmas
Жарю без масла
864 / 746 / 168
Регистрация: 13.01.2012
Сообщений: 1,702
20.01.2012, 00:06 #4
для зацикливания используются циклы, а в блоке catch ф-я Write может выбросить искл-е (что она и сделает при 2м неправильном вводе), которое нигде не перехватывается
0
20.01.2012, 00:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.01.2012, 00:06
Привет! Вот еще темы с ответами:

Защита от ввода некорректных данных в консольной программе - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;conio.h&gt; #include &lt;cmath&gt; using namespace std; ...

Ошибка при вводе данных и в функциях - C++
Некорректно происходят вычисления x1 и x2. Так же при вводе в переменную a,b или c начинается непонятный цикл...ясно что он постоянный...

Программа крашится при вводе данных - C++
Вот этот код скопирован из учебника. На моем компьютере почему то запускается программа но при вводе 1.2 3.4 5.6| просто выключается и все....

Проверка типа данных при вводе - C++
Задача: реализовать проверку на то, что пользователь ввёл целое число. Нашёл это: //Зачем использовать шаблон? template&lt;class T&gt;...


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

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

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