7.3.9.4 The cproj functions
Synopsis
#include <complex.h>
double complex cproj(double complex z);
float complex cprojf(float complex z);
long double complex cprojl(long double complex z);
Description
The cproj functions compute a projection of z onto the Riemann sphere: z projects to z except that all complex infinities (even those with one infinite part and one NaN part) project to positive infinity on the real axis. If z has an infinite part, then cproj(z) is equivalent to
INFINITY + I * copysign(0.0, cimag(z))
Returns
The cproj functions return the value of the projection onto the Riemann sphere.