次の方法で共有


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) に m の絶対値が 0.5 以上のおよび 1.0 未満、x = m*2.破棄します。浮動小数点値 (x) と指数 (n) が。n n 整数の指数は expptrが指す位置に格納します。

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

必要条件

関数

必須ヘッダー

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