### 3. Library calls (functions within program libraries)

# CARG

Section: Linux Programmer's Manual (3)Updated: 2017-09-15

Index | Return to Main Contents

## NAME

carg, cargf, cargl - calculate the complex argument## SYNOPSIS

**#include <complex.h>**

**double carg(double complex ***z***);**

**float cargf(float complex ***z***);**

**long double cargl(long double complex ***z***);**

## DESCRIPTION

These functions calculate the complex argument (also called phase angle) of*z*, with a branch cut along the negative real axis.

A complex number can be described by two real coordinates. One may use rectangular coordinates and gets

z = x + I * y

where
*x = creal(z)*
and
*y = cimag(z)*.

Or one may use polar coordinates and gets

z = r * cexp(I * a)

where
*r = cabs(z)*
is the "radius", the "modulus", the absolute value of
*z*,
and
*a = carg(z)*
is the "phase angle", the argument of
*z*.

One has:

tan(carg(z)) = cimag(z) / creal(z)

## RETURN VALUE

The return value is the range of [-pi,pi].## VERSIONS

These functions first appeared in glibc in version 2.1.## ATTRIBUTES

For an explanation of the terms used in this section, see**attributes**(7).

Interface | Attribute | Value |

carg(),
cargf(),
cargl()
| Thread safety | MT-Safe |

## CONFORMING TO

C99, POSIX.1-2001, POSIX.1-2008.## SEE ALSO

**cabs**(3),

**complex**(7)

## COLOPHON

This page is part of release 4.15 of the Linux*man-pages*project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.

## Index

Return to Main Contents

Close