Condividi tramite


feraiseexcept

Genera le eccezioni a virgola mobile specificate.

Sintassi

int feraiseexcept(
   int excepts
);

Parametri

excepts
Eccezioni a virgola mobile da generare.

Valore restituito

Se tutte le eccezioni specificate vengono generate correttamente, restituisce 0.

Osservazioni:

La funzione feraiseexcept prova a generare le eccezioni a virgola mobile specificate da excepts. La feraiseexcept funzione supporta queste macro di eccezione, definite in <fenv.h>:

Macro di eccezioni Descrizione
FE_DIVBYZERO Si è verificato un errore di singolarità o polo in un'operazione precedente a virgola mobile. È stato creato un valore di infinità.
FE_INEXACT La funzione è stata forzata ad arrotondare il risultato archiviato di un'operazione precedente a virgola mobile.
FE_INVALID Si è verificato un errore di dominio in un'operazione precedente a virgola mobile.
FE_OVERFLOW Si è verificato un errore di intervallo. Un risultato dell'operazione precedente a virgola mobile era troppo grande per essere rappresentato.
FE_UNDERFLOW Un risultato dell'operazione precedente a virgola mobile era troppo piccolo per essere rappresentato con la massima precisione. È stato creato un valore denormalizzato.
FE_ALL_EXCEPT OR bit per bit di tutte le eccezioni a virgola mobile supportate.

L'argomento excepts può essere zero, uno dei valori delle macro di eccezioni oppure OR bit per bit di due o più macro di eccezioni supportate. Se una delle macro di eccezione specificate è FE_OVERFLOW o FE_UNDERFLOW, l'eccezione FE_INEXACT può essere generata come effetto collaterale.

Per usare questa funzione, è necessario disattivare le ottimizzazioni a virgola mobile che potrebbero impedire l'accesso tramite la direttiva #pragma fenv_access(on) prima della chiamata. Per ulteriori informazioni, vedere fenv_access.

Specifico di Microsoft: le eccezioni specificate in excepts vengono generate nell'ordine FE_INVALID, FE_DIVBYZERO, FE_OVERFLOW, FE_UNDERFLOW, FE_INEXACT. Tuttavia, FE_INEXACT può essere generato quando FE_OVERFLOW o FE_UNDERFLOW viene generato, anche se non specificato in excepts.

Requisiti

Funzione Intestazione C Intestazione C++
feraiseexcept <fenv.h> <cfenv>

Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Vedi anche

Informazioni di riferimento sulle funzioni alfabetiche
fesetexceptflag
feholdexcept
fetestexcept
feupdateenv