unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (Debian-5.0)
Page:
Section:
Apropos / Subsearch:
optional field

ISGREATER(3)               Linux Programmer's Manual              ISGREATER(3)



NAME
       isgreater,    isgreaterequal,   isless,   islessequal,   islessgreater,
       isunordered - macros to test a relation

SYNOPSIS
       #include <&lt;math.h>&gt;

       int isgreater(x,y);

       int isgreaterequal(x,y);

       int isless(x,y);

       int islessequal(x,y);

       int islessgreater(x,y);

       int isunordered(x,y);

       Compile with -std=c99; link with -lm.

DESCRIPTION
       The normal relation operations (like less) will fail if one of the  op-
       erands  is  NaN.   This  will  cause  an exception.  To avoid this, C99
       defines these macros.  The macros are guaranteed to evaluate their  op-
       erands only once.  The operand can be of any real floating-point type.

       isgreater()
              determines (x) &gt; (y) without an exception if x or y is NaN.

       isgreaterequal()
              determines (x) &gt;= (y) without an exception if x or y is NaN.

       isless()
              determines (x) &lt; (y) without an exception if x or y is NaN.

       islessequal()
              determines (x) &lt;= (y) without an exception if x or y is NaN.

       islessgreater()
              determines (x) &lt; (y) || (x) &gt; (y) without an exception if x or y
              is NaN.  This macro is not equivalent  to  x != y  because  that
              expression is true if x or y is NaN.

       isunordered()
              is true if x or y is NaN and false otherwise.

CONFORMING TO
       C99.

NOTES
       Not  all  hardware supports these functions, and where it doesn't, they
       will be emulated by macros.  This will give you a performance  penalty.
       Don't use these functions if NaN is of no concern for you.

SEE ALSO
       fpclassify(3), isnan(3)

COLOPHON
       This  page  is  part of release 3.05 of the Linux man-pages project.  A
       description of the project, and information about reporting  bugs,  can
       be found at http://www.kernel.org/doc/man-pages/.



                                  2002-07-27                      ISGREATER(3)