August 01, 1991
URL:http://www.drdobbs.com/standard-c/184402404
/* _Dtest function - IEEE 754 version */ #include "xmath.h" short _Dtest (double *px) {/* categorize *px */ unsigned short *ps = (unsigned short *)px; short xchar = (ps[_D0] & _DMASK) >> _DOFF; if (xchar == _DMAX) /* NaN or INF */ return (ps[_D0] & _DFRAC || ps[_D1] || ps[_D2] || ps[_D3] ? NAN : INF); else if (0 < xchar || ps[_D0] & _DFRAC || ps[_D1] || ps[_D2] || ps[_D3]) return (FINITE); /* finite */ else return (0); /* zero */ } /* End of File */