Reference
C Library
IOstream Library
Strings library
STL Containers
STL Algorithms
Miscellaneous
C Library
cassert (assert.h)
cctype (ctype.h)
cerrno (errno.h)
cfloat (float.h)
ciso646 (iso646.h)
climits (limits.h)
clocale (locale.h)
cmath (math.h)
csetjmp (setjmp.h)
csignal (signal.h)
cstdarg (stdarg.h)
cstddef (stddef.h)
cstdio (stdio.h)
cstdlib (stdlib.h)
cstring (string.h)
ctime (time.h)
cmath (math.h)
functions:
abs
acos
asin
atan
atan2
ceil
cos
cosh
exp
fabs
floor
fmod
frexp
ldexp
log
log10
modf
pow
sin
sinh
sqrt
tan
tanh
macro constants:
HUGE_VAL


ldexp

function
<cmath>
     double ldexp (      double x, int exp );
      float ldexp (       float x, int exp );
long double ldexp ( long double x, int exp );

Generate number from significand and exponent

Returns the resulting floating point value from multiplying x (the significand) by 2 raised to the power of exp (the exponent).

Parameters

x
Floating point value representing the significand.
exp
Value of the exponent.

Return Value

The function returns:

x * 2 exp

Portability

In C, only the double version of this function exists with this name.

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* ldexp example */
#include <stdio.h>
#include <math.h>
int main ()
{
  double param, result;
  int n;
  param = 0.95;
  n = 4;
  result = ldexp (param , n);
  printf ("%f * 2^%d = %f\n", param, n, result);
  return 0;
}


Output:

0.950000 * 2^4 = 15.200000

See also