The function is defined in <cmath> header file.
Mathematically,
ldexp(x, exp) = x * 2exp
ldexp() prototype [As of C++ 11 standard]
double ldexp (double x, int exp); float ldexp (float x, int exp); long double ldexp (long double x, int exp); double ldexp (T x, int exp); // For integral type
The ldexp() function takes two arguments and returns a value of type double
, float
or long double
.
ldexp() Parameters
- x - The floating point value representing the significand.
- exp - The value of exponent.
ldexp() Return value
The ldexp() function returns the value of the expression x * 2exp.
Example 1: How ldexp() function works in C++?
#include <iostream>
#include <cmath>
using namespace std;
int main ()
{
double x = 13.056, result;
int exp = 2;
result = ldexp(x , exp);
cout << "ldexp(x, exp) = " << result << endl;
return 0;
}
When you run the program, the output will be:
ldexp(x, exp) = 52.224
Example 2: ldexp() function with integral type
#include <iostream>
#include <cmath>
using namespace std;
int main ()
{
double result;
int x = 25, exp = 5;
result = ldexp(x , exp);
cout << "ldexp(x, exp) = " << result << endl;
return 0;
}
When you run the program, the output will be:
ldexp(x, exp) = 800