[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'sysutils' (#rtl)

# StrToInt

Convert a string to an integer value.

## Declaration

Source position: sysstrh.inc line 131

`function StrToInt(`
`const s: string`
`):LongInt;`

## Description

StrToInt will convert the string Sto an integer. If the string contains invalid characters or has an invalid format, then an EConvertError is raised.

To be successfully converted, a string can contain a combination of numerical characters, possibly preceded by a minus sign (-). Spaces are not allowed.

The string S can contain a number in decimal, hexadecimal, binary or octal format, as described in the language reference. For enumerated values, the string must be the name of the enumerated value. The name is searched case insensitively.

For hexadecimal values, the prefix '0x' or 'x' (case insensitive) may be used as well.

## Errors

In case of error, an EConvertError is raised.

## See also

IntToStr |  | Convert an integer value to a decimal string.
StrToIntDef |  | Convert a string to an integer value, with a default value.
EConvertError |  | Conversion error.

## Example

    Program Example82;

    {$mode objfpc}

    { This program demonstrates the StrToInt function }

    Uses sysutils;

    Begin
      Writeln (StrToInt('1234'));
      Writeln (StrToInt('-1234'));
      Writeln (StrToInt('0'));
      Try
        Writeln (StrToInt('12345678901234567890'));
      except
        On E : EConvertError do
          Writeln ('Invalid number encountered');
      end;
    End.