![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
AD |
![]()
Сообщение
#1
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Как правильно отловить значение double-переменной, равное indefinite? Т.е. неправильное значение как отловить?
|
|
|
Andrew Selivanov |
![]()
Сообщение
#2
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: ![]() ![]() ![]() |
Как правильно отловить значение double-переменной, равное indefinite? Т.е. неправильное значение как отловить? IMHO лучше проверить аргумент перед тем как отправлять его в функцию, но если ты хочешь именно отловить ошибку, посмотри в сторону matherr: http://docs.hp.com/cgi-bin/doc3k/B3002690004.12349/127 |
|
|
AD |
![]()
Сообщение
#3
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Как правильно отловить значение double-переменной, равное indefinite? Т.е. неправильное значение как отловить? IMHO лучше проверить аргумент перед тем как отправлять его в функцию, но если ты хочешь именно отловить ошибку, посмотри в сторону matherr: http://docs.hp.com/cgi-bin/doc3k/B3002690004.12349/127 Спасибо, но я уже нашел: функция _isnan(double number)! |
|
|
Andrew Selivanov |
![]()
Сообщение
#4
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: ![]() ![]() ![]() |
Как правильно отловить значение double-переменной, равное indefinite? Т.е. неправильное значение как отловить? IMHO лучше проверить аргумент перед тем как отправлять его в функцию, но если ты хочешь именно отловить ошибку, посмотри в сторону matherr: http://docs.hp.com/cgi-bin/doc3k/B3002690004.12349/127 Спасибо, но я уже нашел: функция _isnan(double number)! Прикольно, я вначале не понял, что имелось ввиду ![]() Я о такой функции не знал, но поинтересовался и вот что написано в хидере math.h по этому поводу (#define isnan вызывает нужную версию __isnan):
Малось подзабыл, что тут что значит, но откопал неплохой мануал: http://www.website.masmforum.com/tutorials...uchap7.htm#fxam Вообще говоря, таким хаком мы можем посмотреть не только NaN, но и Normal, Infinity итп. Цитата Content of ST(0) C3 C2 C0
Unsupported 0 0 0 NAN 0 0 1 Normal finite number 0 1 0 Infinity 0 1 1 Zero 1 0 0 Empty 1 0 1 Denormalized number 1 1 0 |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 16.2.2025, 17:02 |