feraiseexcept
Vyvolá zadané výjimky s plovoucí desetinou čárkou.
Syntaxe
int feraiseexcept(
int excepts
);
Parametry
excepts
Výjimky s plovoucí desetinou čárkou, které se mají vyvolat.
Vrácená hodnota
Pokud jsou všechny zadané výjimky úspěšně vyvolány, vrátí hodnotu 0.
Poznámky
Funkce feraiseexcept
se pokusí zvýšit výjimky s plovoucí desetinou čárkou určené excepts
. Funkce feraiseexcept
podporuje tato makra výjimek definovaná v <fenv.h>:
Makro výjimky | Popis |
---|---|
FE_DIVBYZERO |
V dřívější operaci s plovoucí desetinou čárkou došlo k chybě v jednotném čísle nebo pólu; Byla vytvořena nekonečná hodnota. |
FE_INEXACT |
Funkce byla nucena zaokrouhlit uložený výsledek dřívější operace s plovoucí desetinou čárkou. |
FE_INVALID |
V dřívější operaci s plovoucí desetinou čárkou došlo k chybě domény. |
FE_OVERFLOW |
Došlo k chybě rozsahu; Výsledek operace s plovoucí desetinou čárkou byl příliš velký, aby se reprezentoval. |
FE_UNDERFLOW |
Výsledek operace s plovoucí desetinnou čárkou byl příliš malý, aby byl reprezentován při úplné přesnosti; Byla vytvořena denormální hodnota. |
FE_ALL_EXCEPT |
Bitové OR všech podporovaných výjimek s plovoucí desetinou čárkou. |
Argumentem excepts
může být nula, jedna z hodnot maker výjimek nebo bitová hodnota OR dvou nebo více podporovaných maker výjimek. Pokud je FE_OVERFLOW
některá ze zadaných maker výjimek nebo FE_UNDERFLOW
, FE_INEXACT
může být výjimka vyvolána jako vedlejší účinek.
Chcete-li použít tuto funkci, musíte vypnout optimalizace s plovoucí desetinou čárkou, které by mohly zabránit přístupu pomocí #pragma fenv_access(on)
direktivy před voláním. Další informace najdete na webu fenv_access
.
Specifické pro Společnost Microsoft: Výjimky uvedené v excepts
pořadí FE_INVALID
, FE_DIVBYZERO
, , FE_OVERFLOW
, FE_UNDERFLOW
, . FE_INEXACT
Lze však zvýšit, FE_INEXACT
pokud FE_OVERFLOW
nebo FE_UNDERFLOW
je vyvolána, i když není zadán v excepts
.
Požadavky
Function | Záhlaví jazyka C | Hlavička jazyka C++ |
---|---|---|
feraiseexcept |
<fenv.h> | <cfenv> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Viz také
Abecední odkaz na funkci
fesetexceptflag
feholdexcept
fetestexcept
feupdateenv