feraiseexcept
Вызывает указанные исключения с плавающей запятой.
Синтаксис
int feraiseexcept(
int excepts
);
Параметры
excepts
Исключения с плавающей запятой, которые необходимо вызвать.
Возвращаемое значение
Если все заданные исключения вызваны успешно, возвращается 0.
Замечания
Функция feraiseexcept
пытается очистить исключения с плавающей запятой, заданные функцией excepts
. Функция feraiseexcept
поддерживает эти макросы исключений, определенные в <fenv.h>:
Макрос исключения | Description |
---|---|
FE_DIVBYZERO |
При выполнении предыдущей операции с плавающей запятой произошла ошибка сингулярности или полюса, в результате чего было получено бесконечное значение. |
FE_INEXACT |
Функция принудительно округлила сохраненный результат ранее выполненной операции с плавающей запятой. |
FE_INVALID |
Ошибка домена в ранее выполненной операции с плавающей запятой. |
FE_OVERFLOW |
Ошибка диапазона. Ранее выполненная операция с плавающей запятой возвратила слишком большое значение, которое не удается представить. |
FE_UNDERFLOW |
Ранее выполненная операция с плавающей запятой возвратила слишком малое значение, которое не удается представить с полной точностью. Создано денормализованное значение. |
FE_ALL_EXCEPT |
Побитовая операция ИЛИ для всех поддерживаемых исключений с плавающей запятой. |
Аргумент excepts
может быть равен нулю, значению одного из макросов исключений, побитовой операции ИЛИ двух или больше поддерживаемых макросов исключений. Если один из указанных макросов исключений или FE_OVERFLOW
FE_UNDERFLOW
, FE_INEXACT
исключение может быть создано как побочный эффект.
Чтобы использовать эту функцию, необходимо отключить оптимизацию вычислений с плавающей запятой, которая может препятствовать доступу. Для этого следует использовать директиву #pragma fenv_access(on)
перед вызовом. Дополнительные сведения см. в разделе fenv_access
.
Корпорация Майкрософт: исключения, указанные в excepts
порядке FE_INVALID
, , FE_DIVBYZERO
, FE_OVERFLOW
, , FE_UNDERFLOW
. FE_INEXACT
FE_INEXACT
Однако может возникать FE_OVERFLOW
при возникновении или FE_UNDERFLOW
возникновении, даже если он не указан вexcepts
.
Требования
Function | Заголовок C | Заголовок C++ |
---|---|---|
feraiseexcept |
<fenv.h> | <cfenv> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
См. также
Справочник по алфавитной функции
fesetexceptflag
feholdexcept
fetestexcept
feupdateenv