次の方法で共有


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 が返されます。の場合expptrNULL無効なパラメーター ハンドラーは " " に説明されているようにパラメーターの検証呼び出されます。実行の継続が許可された場合、この関数は errno を EINVAL に設定し、0 を返します。

解説

frexp の関数は仮数 (m) に m の絶対値が 0.5 以上1.0 未満x = m. *2 破棄します。x 浮動小数点値 () と指数 (n) が。nn 整数の指数は expptr が指す位置に格納されます。

C++ ではオーバーロードが可能であるため、frexp のオーバーロードを呼び出すことができます。C. のプログラムではfrexp は型と整数を受け取りDouble常にを返します。

必要条件

Function

必須ヘッダー

frexp

<math.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

使用例

// 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