我要评分
获取效率
正确性
完整性
易理解

ldexp

Compute x * 2^exp.

Interface Definition

C interface:

float ldexpf(float x, int exp);

double ldexp(double x, int exp);

long double ldexpl(long double x, int exp);

Parameters

Parameter

Type

Description

Input/Output

x

  • For ldexpf, x is of single-precision floating-point type.
  • For ldexp, x is of double-precision floating-point type.
  • For ldexpl, x is of long double-precision floating-point type.

Floating-point value of the input data.

Input

exp

Integer.

Exponent.

Input

Return Value

The result of x * 2^exp is returned.

Dependency

C: "km.h"

Example

C interface:
    // print result
    printf("ldexp(0.0, 4) = %.15f\n", ldexp(0.0, 4));
    printf("ldexp(-0.0, 4) = %.15f\n", ldexp(-0.0, 4));
    printf("ldexp(3.0, 4) = %.15f\n", ldexp(3.0, 4));
    printf("ldexp(1.73, 3) = %.15f\n", ldexp(1.73, 3));
    printf("ldexp(INFINITY, 4) = %.15f\n", ldexp(INFINITY, 4));
    printf("ldexp(-INFINITY, 4) = %.15f\n", ldexp(-INFINITY, 4));
    printf("ldexp(NAN, 4) = %.15f\n", ldexp(NAN, 4));
    /* 
     * ldexp(0.0, 4) = 0.000000000000000
     * ldexp(-0.0, 4) = -0.000000000000000
     * ldexp(3.0, 4) = 48.000000000000000
     * ldexp(1.73, 3) = 13.840000000000000
     * ldexp(INFINITY, 4) = inf
     * ldexp(-INFINITY, 4) = -inf
     * ldexp(NAN, 4) = nan
     * */