gcvt() - double 型からストリングへの変換

標準

標準/拡張機能 C/C++ 依存項目

XPG4.2
Single UNIX Specification、バージョン 3

両方  

形式

#define _XOPEN_SOURCE_EXTENDED 1
#include <stdlib.h>

char *gcvt(double x, int ndigit, char *buf);

機能説明

gcvt() 関数は、double 型の浮動小数点引数の値を浮動小数点出力ストリング へ変換します。gcvt() 関数は、__isBFP() を使用して、倍精度引数値の 浮動小数点形式 (16 進数浮動小数点または IEEE 2 進数浮動小数点) を判別するよう拡張されました。

gcvt() 関数などの z/OS® XL C/C++ 定様式出力関数は、IEEE 2 進数浮動小数点無限大および NaN 引数値を、 特別な無限大および NaN 浮動小数点数出力シーケンスに変換します。特殊無限大および NaN 出力シーケンスの説明については、『fprintf()、printf()、sprintf() — データのフォーマット設定と書き込み』の『fprintf ファミリーの定様式出力関数 (fprintf Family of Formatted Output Functions)』を参照してください。

gcvt() 関数は、x を NULL 終了ストリング (fprintf()、printf()、sprintf() - データのフォーマット設定と書き込みの %g 形式と同様) へ変換して buf で指定される配列内に入れ、buf を戻します。ndigit 有効桁 (倍精度で決定される未指定の値へ制限され る) を可能であれば %f の形式で、可能でなければ %e の形式 (浮動小数) で作成します。value が、0 未満の場合、戻されたストリングには負符号 (-) が含まれます。value が整数でない場合は、戻されたストリングに基数文字が含まれます。末尾のゼロは、value が整数ではない場合、抑止されます。基数文字は、現行ロケールによって決まります。setlocale() - ロケールの設定 が正常に呼び出されなかった場合は、デフォルト・ロケールの「POSIX」が使用されます。デフォルト・ロケールは、ピリオド (.) を基数文字として指定します。LC_NUMERIC カテゴリーは、現行ロケール内の基数文字の値を 決定します。

注: この関数は Single UNIX Specification、バージョン 3 のレガシー・オプション・グループ に既に移動されていて、将来のバージョンで廃止する可能性があります。移植性の観点からは、sprintf() 関数 が推奨されます。

戻り値

正常に実行された場合、gcvt() は上記で指定したように x に相当する文字を戻します。

正常に実行されなかった場合、gcvt() は NULL を戻します。

関連情報