## Tcl9.0.3/Tk9.0.3 Documentation > Tcl C API > DoubleObj

### Tcl/Tk Applications | Tcl Commands | Tk Commands | [incr Tcl] Package Commands | SQLite3 Package Commands | TDBC Package Commands | tdbc::mysql Package Commands | tdbc::odbc Package Commands | tdbc::postgres Package Commands | tdbc::sqlite3 Package Commands | Thread Package Commands | Tcl C API | Tk C API | [incr Tcl] Package C API | TDBC Package C API

  NAME
    Tcl_NewDoubleObj, Tcl_SetDoubleObj, Tcl_GetDoubleFromObj — 浮動少数値としての Tcl 値を操作する　 manipulate Tcl values as floating-point values
  SYNOPSIS
    #include <tcl.h>
    Tcl_Obj *
    Tcl_NewDoubleObj(doubleValue)
    Tcl_SetDoubleObj(objPtr, doubleValue)
    int
    Tcl_GetDoubleFromObj(interp, objPtr, doublePtr)
  ARGUMENTS
  説明 DESCRIPTION
  参照回数管理 REFERENCE COUNT MANAGEMENT
  SEE ALSO
  KEYWORDS

### NAME

Tcl_NewDoubleObj, Tcl_SetDoubleObj, Tcl_GetDoubleFromObj — 浮動少数値としての Tcl 値を操作する　 manipulate Tcl values as floating-point values

### SYNOPSIS

#include <tcl.h>
Tcl_Obj *
Tcl_NewDoubleObj(doubleValue)
Tcl_SetDoubleObj(objPtr, doubleValue)
int
Tcl_GetDoubleFromObj(interp, objPtr, doublePtr)

### ARGUMENTS

double doubleValue (入力in)
  Tcl 値を初期化又は設定する為に使用する倍精度浮動少数値｡　 A double-precision floating-point value used to initialize or set a Tcl value.

Tcl_Obj *objPtr (入出力in/out)
  Tcl_SetDoubleObj に関して､これは倍値を保存する為の値を指す｡Tcl_SetDoubleObj については､これはそこから倍値を取出すための値を参照する｡　 For Tcl_SetDoubleObj, this points to the value in which to store a double value. For Tcl_GetDoubleFromObj, this refers to the value from which to retrieve a double value.

Tcl_Interp *interp (入出力in/out)
  非-NULLの場合､倍の値取出し失敗の時､不都合伝言文がここに残される｡ When non-NULL, an error message is left here when double value retrieval fails.

double *doublePtr (出力out)
  objPtr から得られた倍値を保存する為の場所を指す｡ Points to place to store the double value obtained from objPtr.

### 説明 DESCRIPTION

これ等の手続函数は倍精度浮動小数値の Tcl 値を生成､修正､読み出す為に使われる｡ These procedures are used to create, modify, and read Tcl values that hold double-precision floating-point values.

Tcl_NewDoubleObj は二倍の値 doubleValue に初期化された新しい Tcl 値を生成して返す｡返される Tcl 値は共有されていない｡ Tcl_NewDoubleObj creates and returns a new Tcl value initialized to the double value doubleValue. The returned Tcl value is unshared.

Tcl_SetDoubleObj は objPtr に指される既存の Tcl 値を二倍の値 doubleValue に設定する｡ objPtr 引数は非共有の Tcl 値を指さなければならない｡共有された Tcl 値へのどのような値の設定の試みも Tcl の記入遅延の理念に抵触する｡どの既存の文字列表現､或は非共有 Tcl 値内の内部表現も新しい値の設定の結果､解放される｡ Tcl_SetDoubleObj sets the value of an existing Tcl value pointed to by objPtr to the double value doubleValue. The objPtr argument must point to an unshared Tcl value. Any attempt to set the value of a shared Tcl value violates Tcl's copy-on-write policy. Any existing string representation or internal representation in the unshared Tcl value will be freed as a consequence of setting the new value.

Tcl_GetDoubleFromObj は Tcl 値 objPtr から二倍の値を取出そうと試みる｡もし試みが成功すると､ TCL_OK が返され､二倍値は doublePtr に指される記憶域に書かれる｡もし試みが失敗すると､ TCL_ERROR が返り､もし interp が非-NULL,なら不都合伝言文が interp 内に残される｡ objPtr の Tcl_ObjType は引続く Tcl_GetDoubleFromObj への呼び出しをより効果的にする為に変化するかもしれない｡ Tcl_GetDoubleFromObj attempts to retrieve a double value from the Tcl value objPtr. If the attempt succeeds, then TCL_OK is returned, and the double value is written to the storage pointed to by doublePtr. If the attempt fails, then TCL_ERROR is returned, and if interp is non-NULL, an error message is left in interp. The Tcl_ObjType of objPtr may be changed to make subsequent calls to Tcl_GetDoubleFromObj more efficient.

### 参照回数管理 REFERENCE COUNT MANAGEMENT

Tcl_NewDoubleObjはTcl_NewObjに似て常に零参照対象である｡ Tcl_NewDoubleObj always returns a zero-reference object, much like Tcl_NewObj.

Tcl_SetDoubleObjはそのobjPtr引数の参照回数を修正しないが､対象が非共有であることを要求する｡ Tcl_SetDoubleObj does not modify the reference count of its objPtr argument, but does require that the object be unshared.

Tcl_GetDoubleFromObjはそのobjPtr引数の参照回数を修正しない; ただ読出すのみ｡註意､但しこの函数は解釈実行機能の結果を設定し得る; もし､それが対象への参照を保持しているのみの場合､それは削除される｡ Tcl_GetDoubleFromObj does not modify the reference count of its objPtr argument; it only reads. Note however that this function may set the interpreter result; if that is the only place that is holding a reference to the object, it will be deleted.

### SEE ALSO

Tcl_NewObj, Tcl_DecrRefCount, Tcl_IncrRefCount, Tcl_GetObjResult

### KEYWORDS

double, double value, double type, internal representation, value, value type, string representation
Copyright © 1996-1997 Sun Microsystems, Inc.