fetestexcept

Determina qual dos sinalizadores de status de exceção de ponto flutuante especificados estão definidos no momento.

Sintaxe

int fetestexcept(
   int excepts
);

Parâmetros

excepts
Um OR bit a bit dos sinalizadores de status de ponto flutuante para testar.

Valor retornado

Em caso de sucesso, retorna uma bitmask contendo um OR bit a bit das macros de exceção de ponto flutuante que correspondem aos sinalizadores de status de exceção atualmente definidos. Retorna 0 se nenhuma das exceções for definida.

Comentários

Use a função fetestexcept para determinar quais exceções foram geradas pela operação de ponto flutuante. Use o parâmetro excepts para especificar quais sinalizadores de status de exceção serão testados. A fetestexcept função usa essas macros de exceção definidas em <fenv.h> in excepts e o valor retornado:

Macro de exceção Descrição
FE_DIVBYZERO Ocorreu um erro de polo ou singularidade em uma operação de ponto flutuante anterior. Um valor infinito foi criado.
FE_INEXACT A função foi forçada a arredondar o resultado armazenado de uma operação de ponto flutuante anterior.
FE_INVALID Ocorreu um erro de domínio em uma operação de ponto flutuante anterior.
FE_OVERFLOW Ocorreu um erro de intervalo. O resultado de uma operação de ponto flutuante anterior era muito grande para ser representado.
FE_UNDERFLOW O resultado de uma operação de ponto flutuante anterior era muito pequeno para ser representado na precisão total. Um valor de denormal foi criado.
FE_ALL_EXCEPT O OR bit a bit de todas as exceções de ponto flutuante com suporte.

O argumento excepts especificado pode ser 0, uma das macros de exceção de ponto flutuante com suporte ou OR bit a bit de duas ou mais das macros. O efeito de qualquer outro valor de argumento excepts é indefinido.

Para usar essa função, você deve desligar otimizações de ponto flutuante que poderiam impedir o acesso usando a diretiva #pragma fenv_access(on) antes da chamada. Para obter mais informações, consulte fenv_access.

Requisitos

Função Cabeçalho C Cabeçalho C++
fetestexcept <fenv.h> <cfenv>

Para obter informações sobre compatibilidade, consulte Compatibilidade.

Confira também

Referência alfabética de função
feclearexcept
feraiseexcept