procedure Inc(var X: Ordinal; [ N: Integer]); overload; procedure Inc(var X: Ordinal; [ N: Integer]); overload;
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;
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.