ECVT
Section: Linux Programmer's Manual (3)
Updated: 2009-03-15
Index
JM Home Page
roff page
名前
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);
glibc 向けの機能検査マクロの要件
(feature_test_macros(7)
参照):
ecvt(),
fcvt():
_SVID_SOURCE || _XOPEN_SOURCE >= 500
説明
関数
ecvt()
は number を NUL 文字で終端された
ndigits 文字の文字列へ変換し、その文字列へのポインタを返す
(ndigits が
double
の精度によって決定されるシステム依存の上限値より大きい場合は、
その条件値が ndigits の値となる)。
number
が 0 でなければ、最上位の桁は 0 以外である。
最下位の桁は丸められる。
文字列には小数点は含まれない。そのかわりに、文字列の先頭からの小数点の
位置が *decpt に保持される。
*decpt が負の値の場合、小数点が文字列の先頭の左側にあることを意味する。
もし(numberの)符号が負ならば *sign は 0 以外の値に、
そうでなければ 0 に設定される。
number
が 0 なら、*decpt が 0 か 1 かは未規定である。
関数
fcvt()
は
ecvt()
と同じ機能を持つが、ndigits は小数点以下の文字数を指定する。
返り値
関数
ecvt()
と
fcvt()
は number の ASCII 表現を含む
静的な領域内の文字列へのポインタを返す。
この文字列は
ecvt()
や
fcvt()
の呼び出しのたびに上書きされる。
準拠
SVr2。
POSIX.1-2001 では「過去の名残 (LEGACY)」と位置付けられている。
POSIX.1-2008 では
ecvt()
と
fcvt()
の仕様が削除され、代わりに
sprintf(3)
の使用が推奨されている(しかし
snprintf(3)
がより適切かもしれない)。
注意
Linux libc4 と libc5 では
ndigits
の型は
size_t
となっていた。
小数点にピリオドを使わないロケールもある。
関連項目
ecvt_r(3),
gcvt(3),
qecvt(3),
setlocale(3),
sprintf(3)
Index
- 名前
-
- 書式
-
- 説明
-
- 返り値
-
- 準拠
-
- 注意
-
- 関連項目
-
This document was created by
man2html,
using the manual pages.
Time: 03:26:40 GMT, April 25, 2010