位置:首頁 > 高級語言 > C語言標準庫 > frexp() - C函數

frexp() - C函數

C庫函數 double frexp(double x, int *exponent)返回值是尾數指向的整數指數是指數。得到的值是 x = mantissa * 2 ^ exponent.

聲明

以下是 frexp() 函數的聲明。

double frexp(double x, int *exponent)

參數

  • x -- 這是一個浮點值用於計算

  • exponent -- 這是指數值是存儲int對象的指針。

返回值

這個函數返回正常化的分數。如果參數x不為零時,歸一化分數為x倍的冪,它的絕對值一直在1/2(含)到1(不包括)的範圍內。如果x是零,則規格化一化分數是零和零exp中存儲。

例子

下麵的例子顯示frexp()函數的用法。

#include <stdio.h>
#include <math.h>

int main ()
{
   double x = 1024, fraction;
   int e;
   
   fraction = frexp(x, &e);
   printf("x = %.2lf = %.2lf * 2^%d
", x, fraction, e);
   
   return(0);
}

讓我們編譯和運行上麵的程序,這將產生以下結果:

x = 1024.00 = 0.50 * 2^11