feholdexcept
Salva o ambiente atual de ponto flutuante no objeto especificado, limpa os sinalizadores de status do ponto flutuante e, se possível, coloca o ambiente de ponto flutuante no modo contínuo.
Sintaxe
int feholdexcept(
fenv_t *penv
);
Parâmetros
penv
Ponteiro para um objeto fenv_t
para conter uma cópia do ambiente de ponto flutuante.
Retornar valor
Retorna zero se, e somente se, a função for capaz de ativar o tratamento de exceções de ponto flutuante contínuo com êxito.
Comentários
A função feholdexcept
é usada para armazenar o estado do ambiente de ponto flutuante atual no objeto fenv_t
apontado por penv
e para definir o ambiente para não interromper a execução em exceções de ponto flutuante. Esse modo é conhecido como modo sem parar. Esse modo continua até que o ambiente seja restaurado usando fesetenv
ou feupdateenv
.
Você pode usar essa função no início de uma sub-rotina que precisa ocultar uma ou mais exceções de ponto flutuante do chamador. Para relatar uma exceção, você pode limpar as exceções indesejadas usando feclearexcept
o e encerrar o modo non-stop com uma chamada para feupdateenv
.
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++ |
---|---|---|
feholdexcept |
<fenv.h> | <cfenv> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Confira também
Referência de função alfabética
feclearexcept
fesetenv
feupdateenv
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de