---
name: "GetInt"
section: "3tcl"
platform: "linux"
package: "tcl8.3-doc"
version: "8.3.5-13"
release: "Debian 5.0 (Lenny)"
platforms: ["linux"]
url: "https://new.carta.tech/GetInt/3tcl"
---

# GetInt(3tcl)

convert from string to integer, double, or boolean

```

```

## 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 the interpreter's 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
