ldexp() คืนค่า x * 2^exp รับ 2 อาร์กิวเมนต์คือ x และ exp
ไวยากรณ์
float ldexp(float x, int exp) double ldexp(double x, int exp) long double ldexp(long double x, int exp)
ตัวอย่างปกติ
double a = 10, res; int exp = 2; res = ldexp(a, exp); // 10 * 2^2 = 40 cout << res; // 40
ตัวอย่าง Overflow
double a = 10, res; int exp = 5000; res = ldexp(a, exp); // ค่ามากเกินไป cout << res; // inf (infinity)
หากผลลัพธ์ใหญ่เกินจะคืนค่า HUGE_VAL (แสดงเป็น inf)