Sign in Join
FPDoc Onlineexperiment

StrToInt function

In unit sysutils

Convert a string to an integer value.

Declaration

pascal
function StrToInt(const s: string): LongInt

Description

StrToInt will convert the string S to a 32-bit signed 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 and tab characters are only allowed at the start of the string. Internally, Val is used, the rules of Val apply.

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 in addition to the customary number notations described in the language reference.

Errors

In case of error, an EConvertError is raised.

See also

Example: ex82

pascal
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.

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.