Использование многомерного массива

type RecType = integer; {<-- здесь задается тип элементов массива}
const MaxRecItem = 65520 div sizeof(RecType);
type = MyArrayType = array[0..MaxRecItem] of RecType;
type = MyArrayTypePtr = ^MyArrayType;
var MyArray: MyArrayTypePtr;
begin
 ItemCnt := 10; {количество элементов массива, которые необходимо распределить}
 GetMem(MyArray, ItemCnt * sizeof(MyArray[1])); {распределение массива}
 MyArray^[3] := 10; {доступ к массиву}
 FreeMem(MyArray, ItemCnt * sizeof(MyArray[1])); {освобождаем массив после работы с ним}
end;
Michael Day Взято из Советов по Delphi от Валентина Озерова Сборник Kuliba

Автор: Steve Schafer

type

 PRow = ^TRow;

 TRow = array[0..16379] of Single;

 PMat = ^TMat;

 TMat = array[0..16379] of PRow;

var

 Mat: PMat;

 X, Y, Xmax, Ymax: Integer;

begin

 Write('Задайте размер массива: ');

 ReadLn(Xmax, Ymax);

 if (Xmax <= 0) or (Xmax > 16380) or (Ymax <= 0) or (Ymax > 16380) then

 begin

  WriteLn('Неверный диапазон. Не могу продолжить.');

  Exit;

 end;

 GetMem(Mat, Xmax * SizeOf(PRow));

 for X := 0 to Xmax - 1 do

 begin

  GetMem(Mat[X], Ymax * SizeOf(Single));

  for Y := 0 to Ymax - 1 do

  Mat^[X]^[Y] := 0.0;

 end;

 WriteLn('Массив инициализирован и готов к работе.');

 WriteLn('Но эта программа закончила свою работу.');

end.

http://delphiworld.narod.ru/ DelphiWorld 6.0

Отправить комментарий

Проверка
Антиспам проверка
Image CAPTCHA
...