Tcl_GetDoubleFromObj(interp, objPtr, doublePtr)
These procedures are used to create, modify, and read Tcl objects that hold double-precision floating-point values.
Tcl_NewDoubleObj creates and returns a new Tcl object initialized to the double value doubleValue. The returned Tcl object is unshared.
Tcl_SetDoubleObj sets the value of an existing Tcl object pointed to by objPtr to the double value doubleValue. The objPtr argument must point to an unshared Tcl object. Any attempt to set the value of a shared Tcl object violates Tcl's copy-on-write policy. Any existing string representation or internal representation in the unshared Tcl object will be freed as a consequence of setting the new value.
Tcl_GetDoubleFromObj attempts to retrieve a double value from the Tcl object 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.