NAME

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

SYNOPSIS

#include <tcl.h>
int
Tcl_GetInt(interp, string, intPtr)
int
Tcl_GetDouble(interp, string, doublePtr)
int
Tcl_GetBoolean(interp, string, boolPtr)

ARGUMENTS

Tcl_Interp *interp (in)
Interpreter to use for error reporting.

char *string (in)
Textual value to be converted.

int *intPtr (out)
Points to place to store integer value converted from string.

double *doublePtr (out)
Points to place to store double-precision floating-point value converted from string.

int *boolPtr (out)
Points to place to store boolean value (0 or 1) converted from string.

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 string 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 string doesn't have the proper syntax for the desired type then TCL_ERROR is returned, an error message is left in interp->result, and nothing is stored at *intPtr or *doublePtr or *boolPtr.

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

Tcl_GetDouble expects string 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''; and a signed decimal exponent. 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 string to specify a boolean value. If string is any of 0, false, no, or off, then Tcl_GetBoolean stores a zero value at *boolPtr. If string 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
Copyright © 1989-1993 The Regents of the University of California.
Copyright © 1994-1996 Sun Microsystems, Inc.
Copyright © 1995, 1996 Roger E. Critchlow Jr.