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
Défini dans l'en-tête <math.h>
float fminf ( float x, float y ) ;
(1) (depuis C99)
double fmin ( double x, double y ) ;
(2) (depuis C99)
long double fminl ( long double x, long double y ) ;
(3) (depuis C99)
Défini dans l'en-tête <tgmath.h>
#define fmin( x, y )
(4) (depuis C99)
1-3) Retourne le plus petit des deux arguments à virgule flottante, en traitant les NaN comme des données manquantes (entre un NaN et une valeur numérique, la valeur numérique est choisie).
4) Macro générique de type : Si un argument a le type long double , fminl est appelé. Sinon, si un argument a un type entier ou a le type double , fmin est appelé. Sinon, fminf est appelé.

Table des matières

Paramètres

x, y - valeurs à virgule flottante

Valeur de retour

En cas de succès, retourne la plus petite de deux valeurs à virgule flottante. La valeur retournée est exacte et ne dépend d'aucun mode d'arrondi.

Gestion des erreurs

Cette fonction n'est soumise à aucune des conditions d'erreur spécifiées dans math_errhandling .

Si l'implémentation prend en charge l'arithmétique à virgule flottante IEEE (IEC 60559),

  • Si l'un des deux arguments est NaN, la valeur de l'autre argument est retournée
  • Seulement si les deux arguments sont NaN, NaN est retourné

Notes

Cette fonction n'est pas tenue d'être sensible au signe de zéro, bien que certaines implémentations imposent en outre que si un argument est +0 et l'autre est -0, alors -0 est retourné.

Exemple

#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));
}

Sortie possible :

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

Références

  • Norme C23 (ISO/CEI 9899:2024) :
  • 7.12.12.3 Les fonctions fmin (p: TBD)
  • 7.25 Mathématiques génériques de type <tgmath.h> (p: TBD)
  • F.10.9.3 Les fonctions fmin (p: TBD)
  • Norme C17 (ISO/CEI 9899:2018) :
  • 7.12.12.3 Les fonctions fmin (p: TBD)
  • 7.25 Mathématiques génériques de type <tgmath.h> (p: TBD)
  • F.10.9.3 Les fonctions fmin (p: TBD)
  • Norme C11 (ISO/IEC 9899:2011) :
  • 7.12.12.3 Les fonctions fmin (p: 258)
  • 7.25 Mathématiques génériques de type <tgmath.h> (p: 373-375)
  • F.10.9.3 Les fonctions fmin (p: 530)
  • Norme C99 (ISO/CEI 9899:1999) :
  • 7.12.12.3 Les fonctions fmin (p: 239)
  • 7.22 Mathématiques génériques de type <tgmath.h> (p: 335-337)
  • F.9.9.3 Les fonctions fmin (p: 466)

Voir aussi

(C99)
vérifie si le premier argument à virgule flottante est inférieur au second
(macro de fonction)
(C99) (C99) (C99)
détermine la plus grande de deux valeurs à virgule flottante
(fonction)