home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: Science / Science.zip / gmt_os2.zip / src / math / s_finite.c < prev    next >
Encoding:
C/C++ Source or Header  |  1995-03-16  |  670 b   |  32 lines

  1.  
  2. /* @(#)s_finite.c 1.3 95/01/18 */
  3. /*
  4.  * ====================================================
  5.  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
  6.  *
  7.  * Developed at SunSoft, a Sun Microsystems, Inc. business.
  8.  * Permission to use, copy, modify, and distribute this
  9.  * software is freely granted, provided that this notice 
  10.  * is preserved.
  11.  * ====================================================
  12.  */
  13.  
  14. /*
  15.  * finite(x) returns 1 is x is finite, else 0;
  16.  * no branching!
  17.  */
  18.  
  19. #include "fdlibm.h"
  20.  
  21. #ifdef __STDC__
  22.     int finite(double x)
  23. #else
  24.     int finite(x)
  25.     double x;
  26. #endif
  27. {
  28.     int hx; 
  29.     hx = __HI(x);
  30.     return  (unsigned)((hx&0x7fffffff)-0x7ff00000)>>31;
  31. }
  32.