Tcl_GetDoubleFromObj(3) manipulate Tcl objects as floating-point values

Other Alias

Tcl_NewDoubleObj, Tcl_SetDoubleObj

SYNOPSIS

#include <tcl.h>



Tcl_Obj *
Tcl_NewDoubleObj(doubleValue)


Tcl_SetDoubleObj(objPtr, doubleValue)


int
Tcl_GetDoubleFromObj(interp, objPtr, doublePtr)

ARGUMENTS

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 the interpreter's result object unless interp is NULL.
double    *doublePtr    (out)
Points to place to store the double value obtained from objPtr.


DESCRIPTION

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 zero. Both procedures set the object's type to be double 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 the interpreter's result object unless interp is NULL. 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.

KEYWORDS

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