fesetexceptflag
Nastaví zadané příznaky stavu s plovoucí desetinou čárkou v aktuálním prostředí s plovoucí desetinou čárkou.
Syntaxe
int fesetexceptflag(
const fexcept_t *pstatus,
int excepts
);
Parametry
pstatus
Ukazatel na fexcept_t
objekt obsahující hodnoty pro nastavení příznaků stavu výjimky na. Objekt může být nastaven předchozím voláním fegetexceptflag
.
excepts
Příznak stavu výjimky s plovoucí deseti desetinou čárkou, který se má nastavit.
Vrácená hodnota
Pokud jsou všechny zadané příznaky stavu výjimky úspěšně nastaveny, vrátí hodnotu 0. V opačném případě vrátí nenulovou hodnotu.
Poznámky
Funkce fesetexceptflag
nastaví stav výjimky s plovoucí desetinou čárkou příznaky určené excepts
odpovídajícími hodnotami nastavenými v objektu fexcept_t
, na který pstatus
odkazuje . Nevyvolá výjimky. Ukazatel pstatus
musí odkazovat na platný fexcept_t
objekt nebo následné chování není definováno. Funkce fesetexceptflag
podporuje tyto hodnoty maker výjimek v excepts
definici 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, jedno z podporovaných maker s plovoucí desetinou čárkou nebo bitové OR dvou nebo více maker. Účinek jakékoli jiné hodnoty argumentu není definován.
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
.
Požadavky
Function | Záhlaví jazyka C | Hlavička jazyka C++ |
---|---|---|
fesetexceptflag |
<fenv.h> | <cfenv> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.