# cargf, carg, cargl

< c‎ | numeric‎ | complex
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

C
 Language Standard Library Type support Dynamic memory management Error handling Program utilities Date and time utilities Strings library Algorithms Numerics Input/output support Localization support Thread support (C11) Atomic operations (C11)

Complex number arithmetic
Types and the imaginary constant
Manipulation
 cimag creal carg
Power and exponential functions
Trigonometric functions
Hyperbolic functions

 Defined in header `` float       cargf( float complex z ); (since C99) double      carg( double complex z ); (since C99) long double cargl( long double complex z ); (since C99)

Computes the argument (also called phase angle) of `z`, with a branch cut along the negative real axis.

### Parameters

 z - complex argument

### Return value

The argument of `z` in the interval (−π; π).

### Example

```#include <stdio.h>
#include <complex.h>
#include <math.h>

int main()
{
double complex z;                 /* complex number     */
double phase;                     /* phase angle        */
double rtod = 180.0/acos(-1.0);   /* radians to degrees */

z = 0.0+0.0*_Complex_I;
phase = carg(z);
printf("%9f radians,  %6.1f degrees\n", phase,phase*rtod);

z = 1.0+1.0*_Complex_I;
phase = carg(z);
printf("%9f radians,  %6.1f degrees\n", phase,phase*rtod);

z = -1.0+1.0*_Complex_I;
phase = carg(z);
printf("%9f radians,  %6.1f degrees\n", phase,phase*rtod);

z = -1.0-1.0*_Complex_I;
phase = carg(z);
printf("%9f radians,  %6.1f degrees\n", phase,phase*rtod);

z = 1.0-1.0*_Complex_I;
phase = carg(z);
printf("%9f radians,  %6.1f degrees\n", phase,phase*rtod);

return 0;
}```

Output:

```0.000000 radians,     0.0 degrees
0.785398 radians,    45.0 degrees
2.356194 radians,   135.0 degrees
-2.356194 radians,  -135.0 degrees
-0.785398 radians,   -45.0 degrees```