Sdílet prostřednictvím


feholdexcept

Uloží aktuální prostředí s plovoucí desetinou čárkou v zadaném objektu, vymaže příznaky stavu s plovoucí desetinou čárkou a pokud je to možné, umístí prostředí s plovoucí desetinou čárkou do režimu bez zastavení.

Syntaxe

int feholdexcept(
   fenv_t *penv
);

Parametry

penv
Ukazatel na fenv_t objekt, který bude obsahovat kopii prostředí s plovoucí desetinou čárkou.

Vrácená hodnota

Vrátí nulu, pokud je funkce schopná úspěšně zapnout zpracování výjimek s plovoucí desetinou čárkou bez zastavení.

Poznámky

Funkce feholdexcept se používá k uložení stavu aktuálního prostředí s plovoucí desetinou čárkou v objektu fenv_t , na který penvodkazuje , a k nastavení prostředí tak, aby nepřerušilo provádění výjimek s plovoucí desetinou čárkou. Tento režim se označuje jako režim bez zastavení. Tento režim pokračuje, dokud se prostředí neobnoví pomocí fesetenv nebo feupdateenv.

Tuto funkci můžete použít na začátku podprogramu, který musí před volajícím skrýt jednu nebo více výjimek s plovoucí desetinnou čárkou. Chcete-li nahlásit výjimku, můžete vymazat nežádoucí výjimky pomocí feclearexcepta poté ukončit režim non-stop voláním feupdateenv.

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++
feholdexcept <fenv.h> <cfenv>

Další informace o kompatibilitě najdete v tématu Kompatibilita.

Viz také

Abecední odkaz na funkci
feclearexcept
fesetenv
feupdateenv