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
Definido en el encabezado <math.h>
float fminf ( float x, float y ) ;
(1) (desde C99)
double fmin ( double x, double y ) ;
(2) (desde C99)
long double fminl ( long double x, long double y ) ;
(3) (desde C99)
Definido en el encabezado <tgmath.h>
#define fmin( x, y )
(4) (desde C99)
1-3) Devuelve el menor de dos argumentos de punto flotante, tratando los NaN como datos faltantes (entre un NaN y un valor numérico, se elige el valor numérico).
4) Macro genérico de tipos: Si algún argumento tiene tipo long double , fminl es llamado. De lo contrario, si algún argumento tiene tipo entero o tiene tipo double , fmin es llamado. De lo contrario, fminf es llamado.

Contenidos

Parámetros

x, y - valores de punto flotante

Valor de retorno

Si tiene éxito, devuelve el menor de dos valores de punto flotante. El valor devuelto es exacto y no depende de ningún modo de redondeo.

Manejo de errores

Esta función no está sujeta a ninguna de las condiciones de error especificadas en math_errhandling .

Si la implementación soporta aritmética de punto flotante IEEE (IEC 60559),

  • Si uno de los dos argumentos es NaN, se devuelve el valor del otro argumento
  • Solo si ambos argumentos son NaN, se devuelve NaN

Notas

Esta función no está obligada a ser sensible al signo del cero, aunque algunas implementaciones adicionalmente exigen que si un argumento es +0 y el otro es -0, entonces se devuelve -0.

Ejemplo

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

Salida posible:

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

Referencias

  • Estándar C23 (ISO/IEC 9899:2024):
  • 7.12.12.3 Las funciones fmin (p: TBD)
  • 7.25 Matemáticas genéricas de tipos <tgmath.h> (p: TBD)
  • F.10.9.3 Las funciones fmin (p: TBD)
  • Estándar C17 (ISO/IEC 9899:2018):
  • 7.12.12.3 Las funciones fmin (p: TBD)
  • 7.25 Matemáticas genéricas de tipos <tgmath.h> (p: TBD)
  • F.10.9.3 Las funciones fmin (p: TBD)
  • Estándar C11 (ISO/IEC 9899:2011):
  • 7.12.12.3 Las funciones fmin (p: 258)
  • 7.25 Matemáticas genéricas de tipo <tgmath.h> (p: 373-375)
  • F.10.9.3 Las funciones fmin (p: 530)
  • Estándar C99 (ISO/IEC 9899:1999):
  • 7.12.12.3 Las funciones fmin (p: 239)
  • 7.22 Matemáticas genéricas de tipo <tgmath.h> (p: 335-337)
  • F.9.9.3 Las funciones fmin (p: 466)

Véase también

(C99)
comprueba si el primer argumento de punto flotante es menor que el segundo
(macro de función)
(C99) (C99) (C99)
determina el mayor de dos valores de punto flotante
(función)