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 を使用します。詳細については、「プラットフォーム呼び出しの例」を参照してください。