cabs, cabsf, cabsl — return a complex absolute value
#include <complex.h>
double cabs(double complex z);
float cabsf(float complex z);
long double cabsl(long double complex z);
[CX] The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2024 defers to the ISO C standard.These functions shall compute the complex absolute value (also called norm, modulus, or magnitude) of z.
These functions shall return the complex absolute value.
[MXC] cabs(x + iy), cabs(y + ix), and cabs(x - iy) shall return exactly the same value.
If z is ±0 ± i0, +0 shall be returned.
If the real or imaginary part of z is ±Inf, +Inf shall be returned, even if the other part is NaN.
If the real or imaginary part of z is NaN and the other part is not ±Inf, NaN shall be returned.
No errors are defined.
None.
None.
None.
None.
XBD <complex.h>
First released in Issue 6. Derived from the ISO/IEC 9899:1999 standard.
Austin Group Defect 1302 is applied, aligning these functions with the ISO/IEC 9899:2018 standard.
return to top of page