Amiga Unix — 68040 · 68060

Manual pages › BSD C library (3B)

ieee_funcs(3B)

miscellaneous functions for IEEE arithmetic

From the original Amiga UNIX 2.1 manual. Some things it mentions may not be in this release.

Also by this name: isnan(3C), C library

NAME

ieee_functions, fp_class, isnan, copysign, scalbn - miscellaneous functions for IEEE arithmetic

SYNOPSIS

cc [ flag... ] file ... -lucb

#include <fp.h>
#include <math.h>
#include <stdio.h>
enum fp_class_type fp_class(x)
double x;
int isnan(x)
double x;
double copysign(x,y)
double x, y;
double scalbn(x,n)
double x; int n;

DESCRIPTION

Most of these functions provide capabilities required by ANSI/IEEE Std 754-1985 or suggested in its appendix. fp_class(x) corresponds to the IEEE's class() and classifies x as zero, subnormal, normal, oo, or quiet or signaling NaN; /usr/ucbinclude/sys/ieeefp.h defines enum fp_class_type. The following function returns 0 if the indicated condition is not satisfied:

     isnan(x)       returns 1 if x is NaN
copysign(x,y) returns x  with  y's  sign  bit.   scalbn(x,n)
returns  x*  2**n  computed  by exponent manipulation rather
than by actually performing an exponentiation or a multipli-
cation.  Thus

     1 < scalbn(fabs(x),-ilogb(x)) < 2 for every x except 0,
     infinity, and NaN.

FILES

/usr/ucbinclude/sys/ieeefp.h
/usr/ucbinclude/math.h
/usr/include/values.h