浮動小数点型オブジェクト (floating point object)
************************************************

PyFloatObject

   この "PyObject" のサブタイプは Python 浮動小数点型オブジェクトを表
   現します。

PyTypeObject PyFloat_Type

   この "PyTypeObject" のインスタンスは Python 浮動小数点型を表現しま
   す。これは "float" や "types.FloatType" と同じオブジェクトです。

int PyFloat_Check(PyObject *p)

   引数が "PyFloatObject" か "PyFloatObject" のサブタイプのときに真を
   返します。

   バージョン 2.2 で変更: サブタイプを引数にとれるようになりました.

int PyFloat_CheckExact(PyObject *p)

   引数が "PyFloatObject" 型で、かつ "PyFloatObject" 型のサブタイプで
   ないときに真を返します。

   バージョン 2.2 で追加.

PyObject* PyFloat_FromString(PyObject *str, char **pend)
    *Return value: New reference.*

   *str* の文字列値をもとに "PyFloatObject" オブジェクトを生成します。
   失敗すると *NULL* を返します。引数 *pend* は無視されます。この引数
   は後方互換性のためだけに残されています。

PyObject* PyFloat_FromDouble(double v)
    *Return value: New reference.*

   *v* から "PyFloatObject" オブジェクトを生成して返します。失敗すると
   *NULL* を返します。

double PyFloat_AsDouble(PyObject *pyfloat)

   *pyfloat* の指す値を、 C の "double" 型表現で返します。 *pyfloat*
   が Python 浮動小数点オブジェクトではなく、かつ "__float__()" メソッ
   ドを持っていれば、 *pyfloat* を浮動小数点に変換するためにこのメソッ
   ドが最初に呼ばれます。失敗した場合 "-1.0" を返します。そのため呼び
   出し元は "PyErr_Occurred()" を呼んでエラーをチェックすべきです。

double PyFloat_AS_DOUBLE(PyObject *pyfloat)

   *pyfloat* の指す値を、 C の "double" 型表現で返しますが、エラーチェ
   ックを行いません。

PyObject* PyFloat_GetInfo(void)

   float の精度、最小値、最大値に関する情報を含む structseq インスタン
   スを返します。これは、 "float.h" ファイルの薄いラッパーです。

   バージョン 2.6 で追加.

double PyFloat_GetMax()

   float の表現できる最大限解値 *DBL_MAX* を C の "double" 型で返しま
   す。

   バージョン 2.6 で追加.

double PyFloat_GetMin()

   float の正規化された最小の正の値 *DBL_MIN* を C の "double" 型で返
   します。

   バージョン 2.6 で追加.

int PyFloat_ClearFreeList()

   float の free list をクリアします。解放できなかったアイテム数を返し
   ます。

   バージョン 2.6 で追加.

void PyFloat_AsString(char *buf, PyFloatObject *v)

   "str()" と同じルールで *v* を文字列に変換します。 *buf* の長さは
   100 以上でなければなりません。

   この関数は長さを知らないバッファに書きこむので安全ではありません。

   バージョン 2.7 で非推奨: 代わりに "PyObject_Str()" か
   "PyOS_double_to_string()" を利用してください。

void PyFloat_AsReprString(char *buf, PyFloatObject *v)

   "PyFloat_AsString()" とほとんど同じですが、 "repr()" とおなじルール
   を使います。 *buf* の長さは 100 以上でなければなりません。

   この関数は長さを知らないバッファに書きこむので安全ではありません。

   バージョン 2.7 で非推奨: 代わりに "PyObject_Repr()" か
   "PyOS_double_to_string()" を利用してください。
