feholdexcept
Zapisuje bieżące środowisko zmiennoprzecinkowe w określonym obiekcie, czyści flagi stanu zmiennoprzecinkowego, a jeśli to możliwe, umieszcza środowisko zmiennoprzecinkowe w trybie bez zatrzymywania.
Składnia
int feholdexcept(
fenv_t *penv
);
Parametry
penv
Wskaźnik do fenv_t
obiektu zawierającego kopię środowiska zmiennoprzecinkowego.
Wartość zwracana
Zwraca zero, jeśli i tylko wtedy, gdy funkcja jest w stanie pomyślnie włączyć obsługę wyjątków zmiennoprzecinkowych bez zatrzymywania.
Uwagi
Funkcja feholdexcept
służy do przechowywania stanu bieżącego środowiska zmiennoprzecinkowego w fenv_t
obiekcie wskazywanym przez penv
element i ustawiania środowiska tak, aby nie przerywało wykonywania wyjątków zmiennoprzecinkowych. Ten tryb jest znany jako tryb bez zatrzymywania. Ten tryb będzie kontynuowany do momentu przywrócenia środowiska przy użyciu polecenia fesetenv
lub feupdateenv
.
Tej funkcji można użyć na początku podprocji, która musi ukrywać jeden lub więcej wyjątków zmiennoprzecinkowych od obiektu wywołującego. Aby zgłosić wyjątek, możesz wyczyścić niepożądane wyjątki przy użyciu polecenia feclearexcept
, a następnie zakończyć tryb non-stop wywołaniem metody feupdateenv
.
Aby użyć tej funkcji, należy wyłączyć optymalizacje zmiennoprzecinkowe, które mogłyby uniemożliwić dostęp przy użyciu #pragma fenv_access(on)
dyrektywy przed wywołaniem. W celu uzyskania więcej informacji, zobacz następujący temat: fenv_access
.
Wymagania
Function | Nagłówek języka C | Nagłówek języka C++ |
---|---|---|
feholdexcept |
<fenv.h> | <cfenv> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Zobacz też
Odwołanie do funkcji alfabetycznej
feclearexcept
fesetenv
feupdateenv
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla