MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Mathematical Library Functions                      nextafter(3M)



NAME
     nextafter, nextafterf, nextafterl, nexttoward,  nexttowardf,
     nexttowardl  - next representable double-precision floating-
     point number

SYNOPSIS
     c99 [ flag... ] file... -lm [ library... ]
     #include 

     double nextafter(double x, double y);


     float nextafterf(float x, float y);


     long double nextafterl(long double x, long double y);


     double nexttoward(double x, long double y);


     float nexttowardf(float x, long double y);


     long double nexttowardl(long double x, long double y);


DESCRIPTION
     The nextafter(), nextafterf(),  and  nextafterl()  functions
     compute  the next representable floating-point value follow-
     ing x in the direction of y. Thus, if y is less than x, nex-
     tafter()  returns  the  largest representable floating-point
     number less than x. The nextafter(), nextafterf(), and  nex-
     tafterl() functions return y if x equals y.


     The nexttoward(), nexttowardf(), and nexttowardl() functions
     are  equivalent  to the corresponding nextafter() functions,
     except that the second parameter has type  long  double  and
     the functions return y converted to the type of the function
     if x equals y.

RETURN VALUES
     Upon successful completion, these functions return the  next
     representable floating-point value following x in the direc-
     tion of y.


     If x == y, y (of the type x) is returned.






SunOS 5.11          Last change: 12 Jul 2006                    1






Mathematical Library Functions                      nextafter(3M)



     If x is finite and the correct function  value  would  over-
     flow,  a  range  error occurs and ]HUGEVAL, ]HUGEVALF, and
     ]HUGEVAL  (with  the  same  sign  as  x)  is  returned  as
     appropriate for the return type of the function.


     If x or y is NaN, a NaN is returned.


     If x != y and the correct function value is subnormal, zero,
     or  underflows,  a range error occurs and either the correct
     function value (if representable) or 0.0 is returned.

ERORS
     These functions will fail if:

     Range Error    The correct value overflows.

                    If the integer expression (matherrhandling &
                    MATHEREXCEPT)  is  non-zero,  the  overflow
                    floating-point exception is raised.

                    The nextafter() function sets errno to ERANGE
                    if the correct value would overflow.


     Range Error    The correct value underflows.

                    If the integer expression (matherrhandling &
                    MATHEREXCEPT)  is  non-zero,  the underflow
                    floating-point exception is raised.


USAGE
     An application wanting to check for exceptions  should  call
     feclearexcept(FEALEXCEPT) before calling these functions.
     On  return,  if  fetestexcept(FEINVALID    FEDIVBYZERO  
     FEOVERFLOW    FEUNDERFLOW)  is non-zero, an exception has
     been raised. An application should either examine the return
     value  or check the floating point exception flags to detect
     exceptions.


     An application can also set errno to 0 before  calling  nex-
     tafter().  On  return,  if  errno  is non-zero, an error has
     occurred.  The  nextafterf(),  nextafterl().   nexttoward(),
     nexttowardf(), and nexttowardl() functions do not set errno.

ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:




SunOS 5.11          Last change: 12 Jul 2006                    2






Mathematical Library Functions                      nextafter(3M)



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Interface Stability          Standard                    
    
     MT-Level                     MT-Safe                     
    


SEE ALSO
     feclearexcept(3M), fetestexcept(3M),  math.h(3HEAD),  attri-
     butes(5), standards(5)











































SunOS 5.11          Last change: 12 Jul 2006                    3



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™