NAME
csqrt csqrtf
csqrtl — complex square root
functions
SYNOPSIS
#include
<complex.h>
double complex csqrt(double complex z); float complex csqrtf(float complex z); long double complex csqrtl(long double complex z);
DESCRIPTION
[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 square root of z, with a branch cut along the negative real axis.
RETURN VALUE
These functions shall return the complex square root value, in the range of the right half-plane (including the imaginary axis).
[MXC]
csqrt (
conj( z
)),
csqrtf ( conjf ( z)),
and csqrtl ( conjl (
z)) shall return exactly the same value as
conj (
csqrt ( z)),
conjf ( csqrtf ( z)),
and conjl ( csqrtl (
z)), respectively, including for the special values of
z below.
If z is ±0 + i 0, +0 + i 0 shall be returned.
If the imaginary part of z is Inf, +Inf + i Inf, shall be returned.
If z is x + i NaN where x is finite, NaN + i NaN shall be returned and the invalid floating-point exception may be raised.
If z is -Inf + iy where y is positive-signed and finite, +0 + i Inf shall be returned.
If z is +Inf + iy where y is positive-signed and finite, +Inf + i 0 shall be returned.
If z is -Inf + i NaN, NaN ± i Inf shall be returned; the sign of the imaginary part of the result is unspecified.
If z is +Inf + i NaN, +Inf + i NaN shall be returned.
If z is NaN + iy where y is finite, NaN + i NaN shall be returned and the invalid floating-point exception may be raised.
If z is NaN + i NaN, NaN + i NaN shall be returned.
ERRORS
No errors are defined.
EXAMPLES
None.
APPLICATION USAGE
None.
RATIONALE
None.
FUTURE DIRECTIONS
None.
SEE ALSO
XBD <complex.h>
CHANGE HISTORY
First released in Issue 6. Derived from the ISO/IEC 9899:1999 (“ISO C99”) standard.
Issue 8
Austin Group Defect 1302 is applied, aligning these functions with the ISO/IEC 9899:2018 standard.