標準/拡張機能 | C/C++ | 依存項目 |
---|---|---|
XPG4.2 |
両方 |
#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 カテゴリーは、現行ロケール内の基数文字の値を 決定します。
正常に実行された場合、gcvt() は上記で指定したように x に相当する文字を戻します。
正常に実行されなかった場合、gcvt() は NULL を戻します。