Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

ฟังก์ชัน ldexp() ใน C/C++

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)