|
NAMEhypot , hypotf ,
hypotl , cabs ,
cabsf , cabsl —
Euclidean distance and complex absolute value functions
LIBRARYMath Library (libm, -lm)SYNOPSIS#include <math.h>
double
float
long double
double
float
long double
DESCRIPTIONThehypot (), hypotf () and
hypotl () functions compute the sqrt(x*x+y*y) in such a
way that underflow will not happen, and overflow occurs only if the final
result deserves it. The cabs (),
cabsf () and cabsl () functions
compute the complex absolute value of z.
ERROR (due to Roundoff, etc.)Below 0.97 ulps. Consequentlyhypot (5.0,
12.0) = 13.0 exactly; in general, hypot and cabs return
an integer whenever an integer might be expected.
NOTESAs might be expected,hypot (v,
NaN) and
hypot (NaN,
v) are NaN for all finite
v. But programmers might be surprised at first to
discover that
hypot (±infinity,
NaN) = +infinity. This is intentional; it happens
because hypot (infinity,
v) = +infinity for all
v, finite or infinite. Hence
hypot (infinity,
v) is independent of v. Unlike the
reserved operand fault on a VAX, the IEEE NaN is designed to disappear when it
turns out to be irrelevant, as it does in
hypot (infinity,
NaN).
SEE ALSOcarg(3), math(3), sqrt(3)STANDARDSThehypot (), hypotf (),
hypotl (), cabs (),
cabsf (), and cabsl () functions
conform to ISO/IEC 9899:1999
(“ISO C99”).
HISTORYBoth ahypot () function and a
cabs () function appeared in
Version 7 AT&T UNIX.
Visit the GSP FreeBSD Man Page Interface. |