AnDrakula |
Отправлено: 16.01.2007, 15:28 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 2
|
Добрый день!
Как ловить ошибку при возведении отрицательного числа в степень 0,5 например в C++Builder 5?
такой try-блок поймать ее не может
double f, a, b;
...
try{
f = pow(a,;
}
catch(...){ShowMessage("----");}
а описанная здесь ранее функция Power(double a, double не находится компайлером!
такой вариант тоже на проходит:
double f, a, b;
...
try{
struct _exception err;
f = pow(a,;
_matherr(&err);
if (err.type == DOMAIN)
ShowMessage("....!");
}
}
catch(...){ShowMessage("----");}
Заранее всем спасибо! |
|
olegenty |
Отправлено: 16.01.2007, 16:23 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
CODE |
#include <math.hpp>
...
try
{
double x = Power(-1, 0.5);
} catch(...)
{
ShowMessage("Yo");
}
|
|
|
AnDrakula |
Отправлено: 16.01.2007, 16:32 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 2
|
Ух ты, спасибо!
Все работает!!! |
|