Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Bestimmt den positiven Unterschied zwischen den ersten und zweiten Werten.
Syntax
double fdim(
double x,
double y
);
float fdim(
float x,
float y
); //C++ only
long double fdim(
long double x,
long double y
); //C++ only
float fdimf(
float x,
float y
);
long double fdiml(
long double x,
long double y
);
#define fdim(X) // Requires C11 or later
Parameter
x
Der erste Wert.
y
Der zweite Wert.
Rückgabewert
Gibt den positiven Unterschied zwischen x und y zurück:
| Rückgabewert | Szenario |
|---|---|
x-y |
if x>y |
| 0 | if x<= y |
Andernfalls wird einer der folgenden Fehler zurückgeben:
| Abgang | Return |
|---|---|
| Überlaufbereichsfehler | +HUGE_VAL, +HUGE_VALF, oder +HUGE_VALL |
| Unterlaufbereichsfehler | Richtiger Wert (nach dem Runden) |
x oder y ist NaN |
NaN |
Fehler werden gemäß der Angaben in _matherr gemeldet.
Hinweise
Da C++ das Überladen zulässt, können Sie Überladungen von fdim aufrufen, die float und long double-Typen verwenden und zurückgeben. In einem C-Programm, es sei denn, Sie verwenden das Makro <tgmath.h>, um diese Funktion aufzurufen, übernimmt fdim und gibt immer ein double zurück.
Wenn Sie das Makro <tgmath.h>fdim() verwenden, bestimmt der Typ des Arguments, welche Version der Funktion ausgewählt ist. Ausführliche Informationen finden Sie unter Typgengenerische Mathematik.
Diese Funktion entspricht fmax(x - y, 0), mit Ausnahme der Behandlung von NaN.
Anforderungen
| Funktion | C-Header | C++-Header |
|---|---|---|
fdim, fdimf, fdiml |
<math.h> | <cmath> |
fdim-Makro |
<tgmath.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Weitere Informationen
Alphabetische Funktionsreferenz
fmax, fmaxf, fmaxl
abs, labs, llabs, _abs64