cproj, cprojf, cprojl — project into Riemann Sphere


#include <complex.h>

double complex cproj(double complex z);
float complex cprojf(float complex z);
long double complex cprojl(long double complex z);

Link with -lm.


These functions project a point in the plane onto the surface of a Riemann Sphere, the one-point compactification of the complex plane. Each finite point z projects to z itself. Every complex infinite value is projected to a single infinite value, namely to positive infinity on the real axis.


These functions first appeared in glibc in version 2.1.


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

Interface Attribute Value
cproj(), cprojf(), cprojl() Thread safety MT-Safe

Conforming to

C99, POSIX.1-2001, POSIX.1-2008.


In glibc 2.11 and earlier, the implementation does something different (a stereographic projection onto a Riemann Sphere).

See Also

cabs(3), complex(7)


This page is part of release 5.04 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/.

Referenced By


The man pages cprojf(3) and cprojl(3) are aliases of cproj(3).

2015-04-19 Linux Programmer's Manual