cimagf, cimag, cimagl - cppreference.com (original) (raw)

Defined in header <complex.h>
float cimagf( float complex z ); (1) (since C99)
double cimag( double complex z ); (2) (since C99)
long double cimagl( long double complex z ); (3) (since C99)
Defined in header <tgmath.h>
#define cimag( z ) (4) (since C99)

1-3) Returns the imaginary part of z.

  1. Type-generic macro: if z has type long double complex, long double imaginary, or long double, cimagl is called. If z has type float complex, float imaginary, or float, cimagf is called. If z has type double complex, double imaginary, double, or any integer type, cimag is called.

[edit] Parameters

[edit] Return value

The imaginary part of z.

This function is fully specified for all possible inputs and is not subject to any errors described in math_errhandling

[edit] Notes

For any complex variable z, z == creal(z) + I*cimag(z).

[edit] Example

#include <stdio.h> #include <complex.h>   int main(void) {
double complex z = 1.0 + 2.0*I; printf("%f%+fi\n", creal(z), cimag(z)); }

Output:

[edit] References

[edit] See also