Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Деление на ноль

374
21 ноября 2002 года
Pennywise
158 / / 20.05.2000
Как сделать что бы компилятор не ругался...а просто выдавал ноль...? Желательно избежать использования исключений try..catch..
юзаю Borland C++ 5.2...
442
21 ноября 2002 года
HexoGenus
121 / / 20.03.2000
Цитата:
Originally posted by Pennywise
Как сделать что бы компилятор не ругался...а просто выдавал ноль...? Желательно избежать использования исключений try..catch..
юзаю Borland C++ 5.2...



Насколько я знаю ругается совсем не компилятор...
Пишем
int c=5;
int s;
s=c/0;
ShowMessage(s);
Явное деление но ноль но компилятор прекрасно компилирует данный код...

Да простят меня адепты этого форума если я сейчас в чем нибудь ошибусь... я попробую вспомнить как все это происходило в дос...
При выполнении математической операции в программе в случае если команда DIV поделила что нибудь на ноль (а именно в эту команду скорее всего компилятор и преобразует деление) вызывается прерывание INT 0
Это прерывание выводит на экран
Your program caused a divide overflow error.
If the problem persists, contact your program vendor.
и прерывает работу программы...

теоретически можно написать свой обработчик прерывания в дос для того что бы избежать этой проблемы...

В виндовс наверное окну посылается сообщение об ошибке которое ты можешь перехватить...
Это уже не ко мне я с этими месагами работаю слабо...

Так что тебе нужно не компилятор настраивать а перехватывать ошибку что проще всего как раз сделать через try..catch..

И я не пойму почему у тебя вообще встала такая проблема... не проще проверять данные перед делением? Опиши плиз ситуацию...

374
21 ноября 2002 года
Pennywise
158 / / 20.05.2000
моя ошибка была..:(......щас все работает.....
Я просто писал для себя маленькую функцию...которая берет целое число...и засовывает его поразрядно в массив.....и
из-за этих манипуляций с делением и вычислением остатка...наделал кучу ошибок..:(...
и..компилятор стал выдавать ошибку "divided by zero"....
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог