ecvt - ライブラリコールの説明 - Linux コマンド集 一覧表
名前
ecvt, fcvt - 浮動小数点数の文字列への変換
書式
#include <stdlib.h>
char *ecvt(double
number
, int
ndigits
, int *
decpt
,
int *
sign
);
char *fcvt(double
number
, int
ndigits
, int *
decpt
,
int *
sign
);
説明
関数 ecvt () は number を NUL 文字で終端された ndigits 文字 (ndigits は double の精度によって決定される システム依存の制限値にまで減らされる) の文字列へ変換し、 その文字列へのポインタを返す。 最上位の桁は number が 0 でなければ 0 以外である。 下位の桁は丸められる。 文字列には小数点は含まれない。そのかわりに、文字列の先頭からの小数点の 位置が decpt に保持される。 decpt の負の値は小数点が文字列の先頭の左側にあることを意味する。 もし(number の)符号が負ならば sign は 0 以外の値に、 そうでなければ 0 に設定される。 もし number が 0 なら、*decpt が 0 か 1 かは未規定である。
関数 fcvt () は、ndigits が小数点以下の文字数 であることを除いては ecvt () と同じである。
返り値
関数 ecvt () と fcvt () は number の ASCII 表現を含む 静的な領域内の文字列へのポインタを返す。 この文字列は ecvt () や fcvt () の呼出しのたびに上書きされる。
注意
これらの関数は古い物である。代わりに sprintf ()を使うこと。 Linux libc4 と libc5 では ndigits の型は size_t と指定されている。 小数点にピリオドを使わないロケールもある。
準拠
SVr2; POSIX.1-2001 では「過去の名残 (LEGACY)」と位置付けられている。
関連項目
ecvt_r
(3),
gcvt
(3),
qecvt
(3),
setlocale
(3),
sprintf
(3)