Tcl Library Procedures


Tcl_NewDoubleObj, Tcl_SetDoubleObj, Tcl_GetDoubleFromObj - manipulate double Tcl objects


#include <tcl.h>

Tcl_Obj *

Tcl_SetDoubleObj(objPtr, doubleValue)

Tcl_GetDoubleFromObj(interp, objPtr, doublePtr)


double doubleValue (in)
A double-precision floating point value used to initialize or set a double object.

Tcl_Obj *objPtr (in/out)
For Tcl_SetDoubleObj, this points to the object to be converted to double type. For Tcl_GetDoubleFromObj, this refers to the object from which to get a double value; if objPtr does not already point to a double object, an attempt will be made to convert it to one.

Tcl_Interp *interp (in/out)
If an error occurs during conversion, an error message is left in interp->objResult unless interp is NULL.

double *doublePtr (out)
Points to place to store the double value obtained from objPtr.


These procedures are used to create, modify, and read double Tcl objects from C code. Tcl_NewDoubleObj and Tcl_SetDoubleObj will create a new object of double type or modify an existing object to have double type. Both of these procedures set the object to have the double-precision floating point value given by doubleValue; Tcl_NewDoubleObj returns a pointer to a newly created object with reference count 1. Both procedures set the object's type to be double (i.e., they store the address of the double Tcl_ObjType structure in the object's typePtr member) and assign the double value to the object's internal representation doubleValue member. Tcl_SetDoubleObj invalidates any old string representation and, if the object is not already a double object, frees any old internal representation.

Tcl_GetDoubleFromObj attempts to return a double value from the Tcl object objPtr. If the object is not already a double object, it will attempt to convert it to one. If an error occurs during conversion, it returns TCL_ERROR and leaves an error message in interp->objResult unless interp is NULL. This message object can be retrieved using Tcl_GetObjResult. Otherwise, it returns TCL_OK and stores the double value in the address given by doublePtr. If the object is not already a double object, the conversion will free any old internal representation.


Tcl_NewObj, Tcl_DecrRefCount, Tcl_IncrRefCount, Tcl_GetObjResult


double, double object, double type, internal representation, object, object type, string representation

Last change: 8.0

[ tcl8.0a1 | tk8.0a1 | X-ref ]

Copyright © 1989-1994 The Regents of the University of California.
Copyright © 1994-1996 Sun Microsystems, Inc.