ObjectPascal
Inc
Procedure
Increment an ordinal variable System unit
1  procedure Inc ( var Variable : Ordinal variable ) ;
2  procedure Inc ( var Variable : Ordinal variable; Count : Integer ) ;
Description
The Inc procedure increments the ordinal Variable parameter passed to it.
 
You can increment :
 
Characters 
Non-floating number types 
Enumeration types 
Pointers 

 
The increment is by the base size of the unit. For example, incrementing a Pointer will be by 4 bytes if the pointer points to Words.
 
Version 1 of Inc increments by 1 unit.
 
Version 2 of Inc increments by Count units.
Notes
Inc is equivalent in performance to simple addition, or the Succ procedure.

Count can be negative.
Related commands
Dec Decrement an ordinal variable
Pred Decrement an ordinal variable
Sqr Gives the square of a number
Sqrt Gives the square root of a number
Succ Increment an ordinal variable
Sum Return the sum of an array of floating point values
 
Example code : Incrementing characters, numbers and enumerations
type
  TSuit = (Hearts, Clubs, Diamonds, Spades);
var
  Character : char;
  Number    : Integer;
  Card      : TSuit;

begin
  // We can increment characters
  Character := 'A';

  WriteLn('Character : '+Character);
  Inc(Character);
  WriteLn('Character+1 : '+Character);

  // We can increment numbers
  Number := 23;

  WriteLn('Number : '+IntToStr(Number));
  Inc(Number, 5);
  WriteLn('Number+5 : '+IntToStr(Number));

  // We can increment enumerations
  Card := Clubs;

  WriteLn('Card starts at Clubs');
  Inc(Card);
  if Card = Hearts then WriteLn('Card is now Hearts');
  if Card = Clubs then WriteLn('Card is now Clubs');
  if Card = Diamonds then WriteLn('Card is now Diamonds');
  if Card = Spades then WriteLn('Card is now Spades');
end;
Show full unit code
   Character : A
   Character+1 : B
   Number : 23
   Number+5 : 28
   Card starts at Clubs
   Card is now Diamonds