Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C/C++의 ldexp() 함수

<시간/>

여기에서 우리는 C 또는 C++에서 ldexp() 메소드의 사용이 무엇인지 볼 것입니다. 이 함수는 모든 변수 x가 exp 값의 거듭제곱으로 상승한 값을 반환합니다. 이것은 두 개의 인수 x와 exp를 취합니다.

구문은 아래와 같습니다.

float ldexp (float x, int exp)
double ldexp (double x, int exp)
long double ldexp (long double x, int exp)
double ldexp (T x, int exp)

이제 더 나은 아이디어를 얻기 위해 한 가지 예를 살펴보겠습니다.

예시

#include <iostream>
#include <cmath>
using namespace std;
int main() {
   double a = 10, res;
   int exp = 2;
   res = ldexp(a, exp); // Finds a*(2^exp)
   cout << "The result is = " << res << endl;
}

출력

The result is = 40

이제 이 함수에서 생성될 수 있는 몇 가지 오류를 살펴보겠습니다. 반환 값이 너무 커서 표현할 수 없는 경우 이 함수는 HUGE_VAL을 반환합니다.

예를 들어 보겠습니다.

예시

#include <iostream>
#include <cmath>
using namespace std;
int main() {
   double a = 10, res;
   int exp = 5000;
   res = ldexp(a, exp); // Finds a*(2^exp)
   cout << "The result is = " << res << endl;
}

출력

The result is = inf