IEEE(3M) COMMAND REFERENCE IEEE(3M) NAME ieee, copysign, drem, finite, logb, scalb - copysign, remainder, exponent SYNOPSIS #include <math.h> double copysign (x, y) double x, y; double drem (x, y) double x, y; int finite (x) double x; double logb (x) double x; double scalb (x, n) double x; int n; DESCRIPTION These functions are required for, or recommended by the IEEE standard 754 for floating point arithmetic. Copysign (x, y) returns x with its sign changed to y's. Drem (x, y) returns the remainder r := x - n*y where n is the integer nearest the exact value of x/y; moreover, if |n-x/y|=1/2 then n is even. Consequently, the remainder is computed exactly and |r| < |y|/2. But drem (x,0) is exceptional; see the DIAGNOSTICS section. Finite (x) = 1 just when -infinity < x < +infinity, = 0 otherwise (when |x| = infinity or x is NaN) Logb (x) returns x's exponent n, a signed integer converted to double-precision floating-point and so chosen that 1 < |x|/2**n < 2 Scalb (x, n) = x*(2**n) computed, for integer n, without first computing 2**n. DIAGNOSTICS Drem (x, 0) and drem (infinity, y) are undefined; errno is set to EDOM. Printed 4/6/89 1
IEEE(3M) COMMAND REFERENCE IEEE(3M) Logb is undefined when x is zero or negative; errno is set to EDOM. Scalb is undefined when the correct value would overflow; errno is set to ERANGE. SEE ALSO intro(3m) and frexp(3c). Printed 4/6/89 2
%%index%% na:264,130; sy:394,1729; de:2123,1704; di:3827,504;4667,364; se:5031,181; %%index%%000000000107