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

Не работает исключение - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Лабиринт для Pacman http://www.cyberforum.ru/cpp-beginners/thread568608.html
Приветствую! Помогите пожалуйста создать случайным образом лабиринт для игры PacMan. Желательно, если алгоритм будет проще...
C++ Проверить численно первый замечательный предел 1. Проверить численно первый замечательный предел lim (sin x)/x=1, x→0 задавая x значения 1;1/2;1/4;1/8;… до тех пор, пока левая часть равенства не будет отличаться от правой менее чем на... http://www.cyberforum.ru/cpp-beginners/thread568598.html
Двухпоточная сортировка. C++
Есть сортировка - проверьте на своих машинах (двухядерных или двухпоточных) напишите сюды свой проц, число элементов, ну и время. Если будут предложения по ускорению сортировки вторым способом -...
C++ Перегрузка оператора
Привет, форумчане. Есть простой класс, в котором перегружается оператор '==' : #ifndef POINT_H #define POINT_H class point{ int x,y; public: point(){x = 0; y = 0;}
C++ Для функции вычислить ее приближенное значение с точностью ε=10^-3 в точке х=1,5 http://www.cyberforum.ru/cpp-beginners/thread568583.html
Для функции вычислить ее приближенное значение с точностью ε=10^-3 в точке х=1,5. Погрешность ε вычислять с помощью следующего соотношения: | f(x)подстрочный знак n - f(x) подстрочный знак n-1 | <=...
C++ Как вызвать в главной программе оператор унарный минус Paint operator-(const Paint& p) { return Paint(-p.x,-p.y); } подробнее

Показать сообщение отдельно
titans2011
300 / 261 / 43
Регистрация: 27.09.2010
Сообщений: 1,058

Не работает исключение - C++

08.05.2012, 14:39. Просмотров 439. Ответов 4
Метки (Все метки)

Ещё раз всем привет. Написал задачку для проверки throw. Но у меня не получается. Задача тривиальная, ввести число, если это не число из диапазона (возможно и символ), то поймать исключение. То ли не там поставил throw, то ли не то ловлю, но программа во время выполнения, при вводе букв вылетает.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <iostream>
#include <sstream>
using namespace std;
string getNum()
{
string s;
int value;
try
    {
        cin>>s;
        value=atoi(s.c_str());
        if (value<0 || value>1000)
            throw value;
    } catch (...)
    {
        return "wrong number!!!";
    }
if (value>0 && value<=1000)
{
std::ostringstream out;
out << value;
std::string str = out.str(); 
return str;
}
 
 
}
 
int main()
{
cout<<"Enter your number between 0-1000: ";
cout<<"\nYou enter "<<getNum()<<endl;
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru