_fcvt
文字列に浮動小数点数に変換します。 この関数のセキュリティが強化されたバージョンについては、「_fcvt_s」を参照してください。
char *_fcvt(
double value,
int count,
int *dec,
int *sign
);
パラメーター
value
変換される数値。count
小数点以下の桁数を指定します。dec
保存された小数点位置へのポインター。sign
保存された署名のインジケーターへのポインター。
戻り値
_fcvt は 文字列、エラーの空白にポインターを返します。
解説
_fcvt 関数は null で終わるな文字列に浮動小数点数に変換します。 value パラメーターは、変換する浮動小数点数です。 _fcvt は 文字列として value の数値を格納し、null 文字 (「\0」) を付けます。 count パラメーターは 10 進数の後に格納される桁数を指定します。 余分な数字が count の場所に丸められます。 精度の count の数値より少なくがある場合は、文字列をゼロで埋められます。
_fcvt によって返される数字の数。_CVTBUFSIZEを超えないようにします。
数値を文字列に保存されます。 小数点の位置と value の符号は呼び出しの後に dec と符号から取得できます。 整数値への dec パラメーター point; この整数値は文字列の先頭に関して小数点の位置を示します。 ゼロまたは負の整数値は整数部の桁目の左側にあることを示します。 パラメーター sign は valueの符号を表す整数を指定します。 整数を 0 に value が負の場合 value が正の値である設定され、0 以外のな数値に設定されます。
_ecvt と _fcvt の違いは count パラメーターの解釈にあります。 _ecvt は 出力文字列の桁数として _fcvt が小数点以下の桁数として count を解釈する場合、count を復号化します。
_ecvt と _fcvt は変換に単一の静的に割り当てたバッファーを使用します。 これらのルーチンを 1 たびに、前の呼び出しの結果は破棄されます。
この関数は、パラメーターを検証します。 dec または sign が null であるか、または count が 0 の場合、無効なパラメーター ハンドラーが パラメーターの検証"に説明されているように、呼び出されます。 実行の継続 errno は EINVAL に設定され、NULL が返されます。
必要条件
関数 |
必須ヘッダー |
---|---|
_fcvt |
<stdlib.h> |
互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。
使用例
// crt_fcvt.c
// compile with: /W3
// This program converts the constant
// 3.1415926535 to a string and sets the pointer
// buffer to point to that string.
#include <stdlib.h>
#include <stdio.h>
int main( void )
{
int decimal, sign;
char *buffer;
double source = 3.1415926535;
buffer = _fcvt( source, 7, &decimal, &sign ); // C4996
// Note: _fcvt is deprecated; consider using _fcvt_s instead
printf( "source: %2.10f buffer: '%s' decimal: %d sign: %d\n",
source, buffer, decimal, sign );
}