xref: /netbsd/lib/libm/man/fmax.3 (revision d4a6f9b0)
1.\" Copyright (c) 2004 David Schultz <das@FreeBSD.org>
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\"
13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.\" $FreeBSD: src/lib/msun/man/fmax.3,v 1.2 2005/01/14 09:12:05 ru Exp $
26.\" $NetBSD: fmax.3,v 1.2 2010/03/08 02:35:50 snj Exp $
27.\"
28.Dd June 29, 2004
29.Dt FMAX 3
30.Os
31.Sh NAME
32.Nm fmax ,
33.Nm fmaxf ,
34.Nm fmaxl ,
35.Nm fmin ,
36.Nm fminf ,
37.Nm fminl
38.Nd floating-point maximum and minimum functions
39.Sh LIBRARY
40.Lb libm
41.Sh SYNOPSIS
42.In math.h
43.Ft double
44.Fn fmax "double x" "double y"
45.Ft float
46.Fn fmaxf "float x" "float y"
47.Ft "long double"
48.Fn fmaxl "long double x" "long double y"
49.Ft double
50.Fn fmin "double x" "double y"
51.Ft float
52.Fn fminf "float x" "float y"
53.Ft "long double"
54.Fn fminl "long double x" "long double y"
55.Sh DESCRIPTION
56The
57.Fn fmax ,
58.Fn fmaxf ,
59and
60.Fn fmaxl
61functions return the larger of
62.Fa x
63and
64.Fa y ,
65and likewise, the
66.Fn fmin ,
67.Fn fminf ,
68and
69.Fn fminl
70functions return the smaller of
71.Fa x
72and
73.Fa y .
74They treat
75.Li +0.0
76as being larger than
77.Li -0.0 .
78If one argument is an \*(Na, then the other argument is returned.
79If both arguments are \*(Nas, then the result is an \*(Na.
80These routines do not raise any floating-point exceptions.
81.Sh SEE ALSO
82.Xr fabs 3 ,
83.Xr fdim 3 ,
84.Xr math 3
85.Sh STANDARDS
86The
87.Fn fmax ,
88.Fn fmaxf ,
89.Fn fmaxl ,
90.Fn fmin ,
91.Fn fminf ,
92and
93.Fn fminl
94functions conform to
95.St -isoC-99 .
96.Sh HISTORY
97These routines first appeared in
98.Fx 5.3
99and
100.Nx 5.1 .
101