1*2fe8fb19SBen Gras.\" $NetBSD: isgreater.3,v 1.1 2007/02/22 22:08:20 drochner Exp $ 2*2fe8fb19SBen Gras.\" 3*2fe8fb19SBen Gras.\" Copyright (c) 2003 David Schultz <das@FreeBSD.ORG> 4*2fe8fb19SBen Gras.\" All rights reserved. 5*2fe8fb19SBen Gras.\" 6*2fe8fb19SBen Gras.\" Redistribution and use in source and binary forms, with or without 7*2fe8fb19SBen Gras.\" modification, are permitted provided that the following conditions 8*2fe8fb19SBen Gras.\" are met: 9*2fe8fb19SBen Gras.\" 1. Redistributions of source code must retain the above copyright 10*2fe8fb19SBen Gras.\" notice, this list of conditions and the following disclaimer. 11*2fe8fb19SBen Gras.\" 2. Redistributions in binary form must reproduce the above copyright 12*2fe8fb19SBen Gras.\" notice, this list of conditions and the following disclaimer in the 13*2fe8fb19SBen Gras.\" documentation and/or other materials provided with the distribution. 14*2fe8fb19SBen Gras.\" 15*2fe8fb19SBen Gras.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16*2fe8fb19SBen Gras.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17*2fe8fb19SBen Gras.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18*2fe8fb19SBen Gras.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19*2fe8fb19SBen Gras.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20*2fe8fb19SBen Gras.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21*2fe8fb19SBen Gras.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22*2fe8fb19SBen Gras.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23*2fe8fb19SBen Gras.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24*2fe8fb19SBen Gras.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25*2fe8fb19SBen Gras.\" SUCH DAMAGE. 26*2fe8fb19SBen Gras.\" 27*2fe8fb19SBen Gras.\" FreeBSD: /repoman/r/ncvs/src/lib/libc/gen/isgreater.3,v 1.3 2005/02/06 03:23:31 das Exp 28*2fe8fb19SBen Gras.\" 29*2fe8fb19SBen Gras.Dd February 12, 2003 30*2fe8fb19SBen Gras.Dt ISGREATER 3 31*2fe8fb19SBen Gras.Os 32*2fe8fb19SBen Gras.Sh NAME 33*2fe8fb19SBen Gras.Nm isgreater , isgreaterequal , isless , islessequal , 34*2fe8fb19SBen Gras.Nm islessgreater , isunordered 35*2fe8fb19SBen Gras.Nd "compare two floating-point numbers" 36*2fe8fb19SBen Gras.Sh LIBRARY 37*2fe8fb19SBen Gras.Lb libc 38*2fe8fb19SBen Gras.Sh SYNOPSIS 39*2fe8fb19SBen Gras.In math.h 40*2fe8fb19SBen Gras.Ft int 41*2fe8fb19SBen Gras.Fn isgreater "real-floating x" "real-floating y" 42*2fe8fb19SBen Gras.Ft int 43*2fe8fb19SBen Gras.Fn isgreaterequal "real-floating x" "real-floating y" 44*2fe8fb19SBen Gras.Ft int 45*2fe8fb19SBen Gras.Fn isless "real-floating x" "real-floating y" 46*2fe8fb19SBen Gras.Ft int 47*2fe8fb19SBen Gras.Fn islessequal "real-floating x" "real-floating y" 48*2fe8fb19SBen Gras.Ft int 49*2fe8fb19SBen Gras.Fn islessgreater "real-floating x" "real-floating y" 50*2fe8fb19SBen Gras.Ft int 51*2fe8fb19SBen Gras.Fn isunordered "real-floating x" "real-floating y" 52*2fe8fb19SBen Gras.Sh DESCRIPTION 53*2fe8fb19SBen GrasEach of the macros 54*2fe8fb19SBen Gras.Fn isgreater , 55*2fe8fb19SBen Gras.Fn isgreaterequal , 56*2fe8fb19SBen Gras.Fn isless , 57*2fe8fb19SBen Gras.Fn islessequal , 58*2fe8fb19SBen Grasand 59*2fe8fb19SBen Gras.Fn islessgreater 60*2fe8fb19SBen Grastake arguments 61*2fe8fb19SBen Gras.Fa x 62*2fe8fb19SBen Grasand 63*2fe8fb19SBen Gras.Fa y 64*2fe8fb19SBen Grasand return a non-zero value if and only if its nominal 65*2fe8fb19SBen Grasrelation on 66*2fe8fb19SBen Gras.Fa x 67*2fe8fb19SBen Grasand 68*2fe8fb19SBen Gras.Fa y 69*2fe8fb19SBen Grasis true. 70*2fe8fb19SBen GrasThese macros always return zero if either 71*2fe8fb19SBen Grasargument is not a number (NaN), but unlike the corresponding C 72*2fe8fb19SBen Grasoperators, they never raise a floating point exception. 73*2fe8fb19SBen Gras.Pp 74*2fe8fb19SBen GrasThe 75*2fe8fb19SBen Gras.Fn isunordered 76*2fe8fb19SBen Grasmacro takes arguments 77*2fe8fb19SBen Gras.Fa x 78*2fe8fb19SBen Grasand 79*2fe8fb19SBen Gras.Fa y 80*2fe8fb19SBen Grasand returns non-zero if and only if neither 81*2fe8fb19SBen Gras.Fa x 82*2fe8fb19SBen Grasnor 83*2fe8fb19SBen Gras.Fa y 84*2fe8fb19SBen Grasare NaNs. 85*2fe8fb19SBen GrasFor any pair of floating-point values, one 86*2fe8fb19SBen Grasof the relationships (less, greater, equal, unordered) holds. 87*2fe8fb19SBen Gras.Sh SEE ALSO 88*2fe8fb19SBen Gras.Xr fpclassify 3 , 89*2fe8fb19SBen Gras.Xr math 3 , 90*2fe8fb19SBen Gras.Xr signbit 3 91*2fe8fb19SBen Gras.Sh STANDARDS 92*2fe8fb19SBen GrasThe 93*2fe8fb19SBen Gras.Fn isgreater , 94*2fe8fb19SBen Gras.Fn isgreaterequal , 95*2fe8fb19SBen Gras.Fn isless , 96*2fe8fb19SBen Gras.Fn islessequal , 97*2fe8fb19SBen Gras.Fn islessgreater , 98*2fe8fb19SBen Grasand 99*2fe8fb19SBen Gras.Fn isunordered 100*2fe8fb19SBen Grasmacros conform to 101*2fe8fb19SBen Gras.St -isoC-99 . 102*2fe8fb19SBen Gras.Sh HISTORY 103*2fe8fb19SBen GrasThe relational macros described above first appeared in 104*2fe8fb19SBen Gras.Nx 5.0 . 105