fegetexceptflag
Speichert den aktuellen Zustand der angegebenen Gleitkommaausnahme-Flags.
Syntax
int fegetexceptflag(
fexcept_t* pstatus,
int excepts
);
Parameter
pstatus
Ein Zeiger auf ein fexcept_t
-Objekt, das die aktuellen Werte der Ausnahme-Flags enthält, die von excepts
angegeben sind.
excepts
Die in pstatus
zu speichernden Gleitkommaausnahme-Flags.
Rückgabewert
Bei Erfolg gibt 0 (null) zurück. Andernfalls wird ein Wert ungleich Null zurückgegeben.
Hinweise
Die Funktion fegetexceptflag
speichert den aktuellen Zustand der von excepts
angegebenen Gleitkommaausnahme-Statusflags im fexcept_t
-Objekt, auf die pstatus
verweist. pstatus
muss auf ein gültiges fexcept_t
-Objekt zeigen. Andernfalls ist das daraus resultierende Verhalten nicht definiert. Die fegetexceptflag
Funktion unterstützt diese Ausnahmemakros, die in <fenv.h> definiert sind:
Ausnahmemakro | Beschreibung |
---|---|
FE_DIVBYZERO |
Eine Singularität oder ein Polstellenfehler aus einer früheren Gleitkommaoperation; ein Unendlichkeitswert wurde erstellt. |
FE_INEXACT |
Die Funktion wurde gezwungen, das gespeicherte Ergebnis einer früheren Gleitkommaoperation zu runden. |
FE_INVALID |
Ein Domänenfehler ist in einer früheren Gleitkommaoperation aufgetreten. |
FE_OVERFLOW |
Ein Bereichsfehler ist aufgetreten; das Ergebnis einer früheren Gleitkommaoperation war zu groß, um dargestellt zu werden. |
FE_UNDERFLOW |
Das Ergebnis einer früheren Gleitkommaoperation war zu klein, um ganz genau dargestellt zu werden; ein nicht normaler Wert wurde erstellt. |
FE_ALL_EXCEPT |
Bitweiser OR-Operator oder alle unterstützten Gleitkommaausnahmen |
Das Argument excepts
kann entweder null, eines der unterstützten Gleitkommaausnahme-Makros oder das bitweise OR von mindestens zwei der Makros sein. Der Effekt von jedem anderen Argumentwert ist nicht definiert.
Um diese Funktion zu verwenden, müssen Sie vor dem Aufruf Gleitkommaoptimierungen deaktivieren, die den Zugriff mithilfe der #pragma fenv_access(on)
-Direktive verhindern könnten. Weitere Informationen finden Sie unter fenv_access
.
Anforderungen
Funktion | C-Header | C++-Header |
---|---|---|
fegetexceptflag |
<fenv.h> | <cfenv> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.