frexp() - Mathematical Function

Topic

How is Mathematical Function "frexp()" used in C++?
How to Get Mantissa and exponent of a number using c++?

Explanation

frexp() is a Mathematical Function that converts a number into a mantissa in the range 0.5 to less than 1 and an integer exponent such that num=matissa * 2exp. The mantissa is returned by the function and the exponent is stored in the variable pointed by the "exp".

Syntax to get Mantissa and Exponent:


float frexp( float num, int *exp);
double frexp( double num, int *exp);
long double frexp( long double num, int *exp);

Example:



#include <stdio.h>
#include <math.h>
int main()
{
double num, r;
int exp;
num = 6.0;
r = frexp( num, &exp);
printf("The matissa returned is::%lf",r);
printf("The exponent value stored in exp is::%d",exp);
return 0;
}

Result:



The matissa returned is::0.750000
The exponent value stored in exp is::3

In the above example frexp() is used to get the mantissa value and the exponenet value is stored in the "exp".

C++ Tutorial