CPLX.INTRO(3C++) — C++ Complex Math Library
NAME
complex − introduction to C++ complex mathematics library
SYNOPSIS
#include <complex.h>
classcomplex;
DESCRIPTION
This section describes functions and operators found in the C++ Complex Mathematics Library, libcomplex.a. These functions are not automatically loaded by the C++ compiler, CC(1); however, the link editor searches this library under the −lcomplex option. Declarations for these functions may be found in the #include file <complex.h>. When compiling programs using the complex math library, you must provide the −lm option on the CC command line to link the math library.
The Complex Mathematics library implements the data type of complex numbers as a class, complex. It overloads the standard input, output, arithmetic, assignment, and comparison operators, discussed in the manual pages for cplxops(3C++). It also overloads the standard exponential, logarithm, power, and square root functions, discussed in cplxexp(3C++), and the trigonometric functions of sine, cosine, hyperbolic sine, and hyperbolic cosine, discussed in cplxtrig(3C++), for the class complex. Routines for converting between Cartesian and polar coordinate systems are discussed in cartpol(3C++). Error handling is described in cplxerr(3C++).
FILES
INCDIR/complex.h
LIBDIR/libcomplex.a
SEE ALSO
cartpol(3C++), cplxerr(3C++), cplxops(3C++), cplxexp(3C++), and cplxtrig(3C++).
Stroustrup, B. and Rose, L.V., "Complex Arithmetic in C++," in AT&T C++ Language System Release 2.1, Library Manual.
DIAGNOSTICS
Functions in the Complex Mathematics Library (3C++) may return the conventional values (0, 0), (0, ±HUGE), (±HUGE, 0), or (±HUGE, ±HUGE), when the function is undefined for the given arguments or when the value is not representable. (HUGE is the largest-magnitude single-precision floating-point number and is defined in the file <math.h>. The header file <math.h> is included in the file <complex.h>.) In these cases, the external variable errno [see intro(2)] is set to the value EDOM or ERANGE.
Sun Microsystems — Last change: 6 June 1990