.\" Copyright (c) 2004 David Schultz <das@FreeBSD.org>
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $FreeBSD: src/lib/msun/man/fmax.3,v 1.2 2005/01/14 09:12:05 ru Exp $
.\"
.Dd June 29, 2004
.Dt FMAX 3
.Os
.Sh NAME
.Nm fmax ,
.Nm fmaxf ,
.Nm fmaxl ,
.Nm fmin ,
.Nm fminf ,
.Nm fminl
.Nd floating-point maximum and minimum functions
.Sh LIBRARY
.Lb libm
.Sh SYNOPSIS
.In math.h
.Ft double
.Fn fmax "double x" "double y"
.Ft float
.Fn fmaxf "float x" "float y"
.Ft "long double"
.Fn fmaxl "long double x" "long double y"
.Ft double
.Fn fmin "double x" "double y"
.Ft float
.Fn fminf "float x" "float y"
.Ft "long double"
.Fn fminl "long double x" "long double y"
.Sh DESCRIPTION
The
.Fn fmax ,
.Fn fmaxf ,
and
.Fn fmaxl
functions return the larger of
.Fa x
and
.Fa y ,
and likewise, the
.Fn fmin ,
.Fn fminf ,
and
.Fn fminl
functions return the smaller of
.Fa x
and
.Fa y .
They treat
.Li +0.0
as being larger than
.Li -0.0 .
If one argument is an \*(Na, then the other argument is returned.
If both arguments are \*(Nas, then the result is an \*(Na.
These routines do not raise any floating-point exceptions.
.Sh SEE ALSO
.Xr fabs 3 ,
.Xr fdim 3 ,
.Xr math 3
.Sh STANDARDS
The
.Fn fmax ,
.Fn fmaxf ,
.Fn fmaxl ,
.Fn fmin ,
.Fn fminf ,
and
.Fn fminl
functions conform to
.St -isoC-99 .
.Sh HISTORY
These routines first appeared in
.Fx 5.3 .
