Wurde doch schon gesagt. Ein Array, bei dem du die Länge erst zur Laufzeit festlegst (dynamisches Array), machst du so:
Delphi-Quellcode:
var
DynArray: array of Integer;
begin
SetLength(DynArray, 3);
DynArray[0] := 17;
DynArray[1] := 22;
DynArray[2] := 31;
end;
Eine Variable kannst du immer in ihrem Gültigkeitsbereich verwenden. Es gibt allerdings nur außerordentlich selten einen Grund, ein globales Array zu verwenden.