conjf, conj, conjl
From cppreference.com
 
 
 
 
 
  C 
 Concurrency support (C11)
 Complex number arithmetic 
  
 Types and the imaginary constant
 Manipulation
 Power and exponential functions
 Trigonometric functions
 Hyperbolic functions
Defined in header 
 
 
<complex.h> 
 Defined in header 
 
 
<tgmath.h> 
 #define conj( z )
 (4) 
 (since C99) 
4) Type-generic macro: if 
z has type long double complex , long double imaginary , or long double, conjl is called. If z has type float complex , float imaginary , or float, conjf is called. If z has type double complex , double imaginary , double, or any integer type, conj is called.[edit] Parameters
 z
 -
 complex argument
[edit] Return value
The complex conjugate of z.
[edit] Notes
On C99 implementations that do not implement I as _Imaginary_I , conj may be used to obtain complex numbers with negative zero imaginary part. In C11, the macro CMPLX  is used for that purpose.
[edit] Example
Run this code
Output:
The conjugate of 1.0+2.0i is 1.0-2.0i Their product is 5.0+0.0i
[edit] References
- C11 standard (ISO/IEC 9899:2011):
- 7.3.9.4 The conj functions (p: 198)
 
- 7.25 Type-generic math <tgmath.h> (p: 373-375)
 
- G.7 Type-generic math <tgmath.h> (p: 545)
 
- C99 standard (ISO/IEC 9899:1999):
- 7.3.9.3 The conj functions (p: 179)
 
- 7.22 Type-generic math <tgmath.h> (p: 335-337)
 
- G.7 Type-generic math <tgmath.h> (p: 480)
 
[edit] See also
C++ documentation  for conj