NAME
fmax, fmaxf, fmaxl, fmin, fminf, fminl – floating-point maximum and minimum functions
LIBRARY
Math Library (libm, -lm)
SYNOPSIS
#include <math.h>
double
fmax(double x, double y);
float
fmaxf(float x, float y);
long double
fmaxl(long double x, long double y);
double
fmin(double x, double y);
float
fminf(float x, float y);
long double
fminl(long double x, long double y);
DESCRIPTION
The fmax(), fmaxf(), and fmaxl() functions return the larger of x and y, and likewise, the fmin(), fminf(), and fminl() functions return the smaller of x and y. If one argument is an , then the other argument is returned. If both arguments are s, then the result is an . These routines do not raise any floating-point exceptions.
SEE ALSO
STANDARDS
The fmax(), fmaxf(), fmaxl(), fmin(), fminf(), and fminl() functions conform to ISO/IEC 9899:1999 (“ISO C99”).
CAVEATS
The library implementations of these functions treat +0.0 as being larger than -0.0. This behavior is not specified by the C standard, is not portable, and may not occur in light of compiler optimizations. Applications requiring specific handling of signed zeroes or values are recommended to use fmaximum_num(3) and fminimum_num(3) instead, which have strictly defined behavior for these cases.
HISTORY
These routines first appeared in FreeBSD 5.3.