Sdílet prostřednictvím


feupdateenv

Uloží aktuálně vyvolané výjimky s plovoucí desetinnou čárkou, obnoví zadaný stav prostředí s plovoucí desetinnou čárkou a potom vyvolá uložené výjimky s plovoucí desetinnou čárkou.

Syntaxe

int feupdateenv(
   const fenv_t* penv
);

Parametry

penv
Ukazatel na fenv_t objekt, který obsahuje prostředí s plovoucí desetinou čárkou nastavené voláním fegetenv nebo feholdexcept. Pomocí makra můžete také určit výchozí spouštěcí prostředí s plovoucí desetinou čárkou FE_DFL_ENV .

Vrácená hodnota

Vrátí hodnotu 0, pokud se všechny akce úspěšně dokončily. V opačném případě vrátí nenulovou hodnotu.

Poznámky

Funkce feupdateenv provádí více akcí. Nejprve uloží aktuální vyvolané příznaky výjimky s plovoucí desetinnou čárkou v automatickém úložišti. Pak nastaví aktuální prostředí s plovoucí desetinou čárkou z hodnoty uložené v objektu fenv_t odkazující na penv. Pokud penv není FE_DFL_ENV nebo neodkazuje na platný fenv_t objekt, následné chování není definováno. feupdateenv Nakonec vyvolá místně uložené výjimky s plovoucí desetinou čárkou.

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

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

Viz také

fegetenv
feclearexcept
feholdexcept
fesetexceptflag