共用方式為


frexp

取得浮點數的尾數和指數。

double frexp(
   double x,
   int *expptr 
);
float frexp(
   float x,
   int * expptr
);  // C++ only
long double frexp(
   long double x,
   int * expptr
);  // C++ only

參數

  • x
    浮點值

  • expptr
    要儲存的整數指標的指標。

傳回值

frexp傳回尾數。 如果 x 為 0,則函式會傳回 0 尾數和指數的。 如果 expptr 為 NULL,則會叫用無效參數處理常式,如參數驗證 中所述。 如果允許繼續執行,函式將 errno 設置為 EINVAL 並回傳 0 。

備註

frexp 函式為尾數 (m) 除以浮點值 (x) 和指數 (n),這種 m 的絕對值大於或等於 0.5 且小於 1.0 且 x = m*2。n 整數指數 n 位置儲存指向 expptr。

C++ 允許多載,因此您可以呼叫 frexp 不同版本的多載。 在 C++ 程式, frexp 一律採用雙和整數並傳回雙精度浮點數。

需求

功能

必要的標頭

frexp

<math.h>

如需其他相容性資訊,請參閱<簡介>中的相容性

範例

// crt_frexp.c
// This program calculates frexp( 16.4, &n )
// then displays y and n.
 

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

int main( void )
{
   double x, y;
   int n;

   x = 16.4;
   y = frexp( x, &n );
   printf( "frexp( %f, &n ) = %f, n = %d\n", x, y, n );
}
  

.NET Framework 對等用法

不適用。若要呼叫標準 C 函式,請使用 PInvoke。如需詳細資訊,請參閱平台叫用範例

請參閱

參考

浮點支援

ldexp

modf、modff