Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Určuje, které ze zadaných příznaků stavu výjimky s plovoucí desetinou čárkou jsou aktuálně nastaveny.
Syntaxe
int fetestexcept(
int excepts
);
Parametry
excepts
Bitový nebo stavových příznaků s plovoucí desetinou čárkou k otestování.
Vrácená hodnota
Při úspěchu vrátí bitovou masku obsahující bitové or makra výjimky s plovoucí desetinou čárkou, která odpovídají aktuálně nastaveným příznakům stavu výjimky. Vrátí hodnotu 0, pokud není nastavena žádná z výjimek.
Poznámky
Pomocí funkce fetestexcept zjistěte, které výjimky byly vyvolány operací s plovoucí desetinnou čárkou. Pomocí parametru excepts určete, které příznaky stavu výjimky se mají testovat. Funkce fetestexcept používá tato makra výjimek definovaná v <souboru fenv.h> excepts a návratová hodnota:
| 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. |
excepts Zadaný argument může být 0, jedno z podporovaných maker výjimek s plovoucí desetinou čárkou nebo bitové OR dvou nebo více maker. Účinek jakékoli jiné excepts 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++ |
|---|---|---|
fetestexcept |
<fenv.h> | <cfenv> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.