System.Inc

From Appmethod Libraries
Jump to: navigation, search

Object Pascal

procedure Inc(var X: Ordinal; [ N: Integer]); overload;
procedure Inc(var X: Ordinal; [ N: Integer]); overload;

Properties

Type Visibility Source Unit Parent
procedure public System.pas System System

Description

Increments an ordinal value by 1 or N.

In Object Pascal code, Inc adds 1 or N to the variable X.

X is a variable of an ordinal type (including Int64) or a pointer type, if the extended syntax is enabled.

N is an integer-type expression.

X increments by 1 or by N, if N is specified; that is, Inc(X) corresponds to the statement X := X + 1, and Inc(X, N) corresponds to the statement X := X + N. On some platforms, Inc may generate optimized code, especially useful in tight loops.

If X is a pointer type, it increments X by N times the size of the type pointed to. Thus, given:

type
  PMyType = ^TMyType;

and

var
  P: PMyType;

the statement Inc(P) increments P by SizeOf(TMyType).

Warning: You cannot use Inc on properties, because it modifies the parameter.

Note: Inc(S, I), where S is a ShortInt and I is a number greater than 127 causes an EIntOverFlow exception to be raised, if range and overflow checking are on. In Object Pascal 1.0, this did not raise an exception.

See Also

Code Examples