C++ Complex::real() function



The C++ std::complex::real() function is used to retrieve the real part of a complex number. Complex numbers consists of both real and imaginary components, and this function allow access to the real component. This function is invoked on a complex object and returns a value of the same type as the real part, typically a floating-point.

Syntax

Following is the syntax for std::complex::real() function.

real (const complex<T>& x);	
double real (ArithmeticType x);

Parameters

  • x − It indicates the complex value.

Return Value

It returns the real part of the complex number x.

Exceptions

none

Example 1

In the following example, we are going to consider the basic usage of the real() function.

#include <iostream>
#include <complex>
int main() {
   std::complex < double > x(1.2, 4.1);
   double y = x.real();
   std::cout << "Real part: " << y << std::endl;
   return 0;
}

Output

Output of the above code is as follows −

Real part: 1.2

Example 2

Consider the following example, where we are going to modify the real part.

#include <iostream>
#include <complex>
int main() {
   std::complex < double > a(2.3, 3.2);
   std::cout << "Before Modification: " << a.real() << std::endl;
   a.real(4.0);
   std::cout << "After Modification: " << a.real() << std::endl;
   return 0;
}

Output

Following is the output of the above code −

Before Modification: 2.3
After Modification: 4

Example 3

Let's look at the following example, where we are going to use the real() with different data types.

#include <iostream>
#include <complex>
int main() {
   std::complex < float > x(1.1 f, 1.5 f);
   std::complex < long double > y(2.0, 5.0);
   std::cout << "Real part(float): " << x.real() << std::endl;
   std::cout << "Real part(long double): " << y.real() << std::endl;
   return 0;
}

Output

If we run the above code it will generate the following output −

Real part(float): 1.1
Real part(long double): 2
complex.htm