kazmax - Linux で自宅サーバー

ecvt - ライブラリコールの説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. 返り値
  5. 注意
  6. 準拠
  7. 関連項目

名前

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)」と位置付けられている。

関連項目