Namespaces
Variants

fmin, fminf, fminl

From cppreference.net
< c ‎ | numeric ‎ | math
Common mathematical functions
Functions
Basic operations
(C99)
(C99)
(C99)
(C99) (C99) (C99) (C23)
Maximum/minimum operations
(C99)
fmin
(C99)
Exponential functions
Power functions
Trigonometric and hyperbolic functions
Nearest integer floating-point
(C99) (C99) (C99)
(C23) (C23) (C23) (C23)
Floating-point manipulation
Narrowing operations
(C23)
(C23)
(C23)
(C23)
(C23)
(C23)
Quantum and quantum exponent
Decimal re-encoding functions
Total order and payload functions
Classification
Error and gamma functions
(C99)
(C99)
(C99)
(C99)
Types
Macro constants
Special floating-point values
Arguments and return values
Error handling
Fast operation indicators
Definiert im Header <math.h>
float fminf ( float x, float y ) ;
(1) (seit C99)
double fmin ( double x, double y ) ;
(2) (seit C99)
long double fminl ( long double x, long double y ) ;
(3) (seit C99)
Definiert im Header <tgmath.h>
#define fmin( x, y )
(4) (seit C99)
1-3) Gibt das kleinere der beiden Gleitkomma-Argumente zurück, wobei NaNs als fehlende Daten behandelt werden (zwischen einem NaN und einem numerischen Wert wird der numerische Wert gewählt).
4) Typgenerisches Makro: Wenn ein Argument den Typ long double hat, wird fminl aufgerufen. Andernfalls, wenn ein Argument ganzzahligen Typ oder den Typ double hat, wird fmin aufgerufen. Andernfalls wird fminf aufgerufen.

Inhaltsverzeichnis

Parameter

x, y - Gleitkommawerte

Rückgabewert

Bei Erfolg wird der kleinere von zwei Gleitkommawerten zurückgegeben. Der zurückgegebene Wert ist exakt und hängt nicht von Rundungsmodi ab.

Fehlerbehandlung

Diese Funktion unterliegt keinen der in math_errhandling spezifizierten Fehlerbedingungen.

Wenn die Implementierung IEEE-Gleitkommaarithmetik (IEC 60559) unterstützt,

  • Wenn eines der beiden Argumente NaN ist, wird der Wert des anderen Arguments zurückgegeben
  • Nur wenn beide Argumente NaN sind, wird NaN zurückgegeben

Hinweise

Diese Funktion muss nicht auf das Vorzeichen von Null reagieren, obwohl einige Implementierungen zusätzlich durchsetzen, dass wenn ein Argument +0 und das andere -0 ist, dann -0 zurückgegeben wird.

Beispiel

#include <math.h>
#include <stdio.h>
int main(void)
{
    printf("fmin(2,1)    = %f\n", fmin(2, 1));
    printf("fmin(-Inf,0) = %f\n", fmin(-INFINITY, 0));
    printf("fmin(NaN,-1) = %f\n", fmin(NAN, -1));
}

Mögliche Ausgabe:

fmin(2,1)    = 1.000000
fmin(-Inf,0) = -inf
fmin(NaN,-1) = -1.000000

Referenzen

  • C23-Standard (ISO/IEC 9899:2024):
  • 7.12.12.3 Die fmin-Funktionen (S.: TBD)
  • 7.25 Typgenerische Mathematik <tgmath.h> (S.: TBD)
  • F.10.9.3 Die fmin-Funktionen (S.: TBD)
  • C17-Standard (ISO/IEC 9899:2018):
  • 7.12.12.3 Die fmin-Funktionen (S.: TBD)
  • 7.25 Typgenerische Mathematik <tgmath.h> (S.: TBD)
  • F.10.9.3 Die fmin-Funktionen (S.: TBD)
  • C11-Standard (ISO/IEC 9899:2011):
  • 7.12.12.3 Die fmin-Funktionen (S: 258)
  • 7.25 Typgenerische Mathematik <tgmath.h> (S: 373-375)
  • F.10.9.3 Die fmin-Funktionen (S: 530)
  • C99-Standard (ISO/IEC 9899:1999):
  • 7.12.12.3 Die fmin-Funktionen (S. 239)
  • 7.22 Typgenerische Mathematik <tgmath.h> (S. 335-337)
  • F.9.9.3 Die fmin-Funktionen (S. 466)

Siehe auch

(C99)
prüft, ob das erste Gleitkomma-Argument kleiner als das zweite ist
(Funktionsmakro)
(C99) (C99) (C99)
bestimmt den größeren von zwei Gleitkommawerten
(Funktion)