Tcl_GetInt

Section: Tcl Library Procedures (3)
Updated:
Index Return to Main Contents



 

NAME

Tcl_GetInt, Tcl_GetDouble, Tcl_GetBoolean - convert from string to integer, double, or boolean  

SYNOPSIS

#include <tcl.h>

int
Tcl_GetInt(interp, src, intPtr)

int
Tcl_GetDouble(interp, src, doublePtr)

int
Tcl_GetBoolean(interp, src, boolPtr)
 

ARGUMENTS

Tcl_Interp *interp (in) Interpreter to use for error reporting.
const char *src (in) Textual value to be converted.
int *intPtr (out) Points to place to store integer value converted from src.
double *doublePtr (out) Points to place to store double-precision floating-point value converted from src.
int *boolPtr (out) Points to place to store boolean value (0 or 1) converted from src.



 

DESCRIPTION

These procedures convert from strings to integers or double-precision floating-point values or booleans (represented as 0- or 1-valued integers). Each of the procedures takes a src argument, converts it to an internal form of a particular type, and stores the converted value at the location indicated by the procedure's third argument. If all goes well, each of the procedures returns TCL_OK. If src does not have the proper syntax for the desired type then TCL_ERROR is returned, an error message is left in the interpreter's result, and nothing is stored at *intPtr or *doublePtr or *boolPtr.

Tcl_GetInt expects src to consist of a collection of integer digits, optionally signed and optionally preceded by white space. If the first two characters of src after the optional white space and sign are ``0x'' then src is expected to be in hexadecimal form; otherwise, if the first such character is ``0'' then src is expected to be in octal form; otherwise, src is expected to be in decimal form.

Tcl_GetDouble expects src to consist of a floating-point number, which is: white space; a sign; a sequence of digits; a decimal point; a sequence of digits; the letter ``e''; a signed decimal exponent; and more white space. Any of the fields may be omitted, except that the digits either before or after the decimal point must be present and if the ``e'' is present then it must be followed by the exponent number.

Tcl_GetBoolean expects src to specify a boolean value. If src is any of 0, false, no, or off, then Tcl_GetBoolean stores a zero value at *boolPtr. If src is any of 1, true, yes, or on, then 1 is stored at *boolPtr. Any of these values may be abbreviated, and upper-case spellings are also acceptable.

 

KEYWORDS

boolean, conversion, double, floating-point, integer