Составители:
Рубрика:
131
парно: процедура Dispose с процедурой New, a. FreeMem - с
Get Мет.
Пример.
program p73;
type
Element= Integer;
DArray= array [1.. 2] of Element;
var
PA: ^DArray;
n, i: integer;
begin
Write('Введите количество элементов ');
Readln(n);
{выделяем необходимый участок памяти для
динамического массива}
GetMem(PA, SizeOf(Element) * n) ;
{введем элементы массива с клавиатуры}
for i:= 1 to n do Read(PA^[i]);
{выведем массив на экран}
for i: = 1 to n do Write(PA^[i]: 2);
FreeMem(PA, SizeOf(Element) * n);
PA:=nil;
……….
end.
После того, как память освобождена, указателю следует
присвоить значение nil во избежание в дальнейшем неприят-
ностей.
Для преобразования типов указателей используется
нетипизированный указатель типа Pointer, который может
иметь значение указателя любого другого типа.
Пример:
program p76;
var
р: pointer;
pb: ^byte;
парно: процедура Dispose с процедурой New, a. FreeMem - с Get Мет. Пример. program p73; type Element= Integer; DArray= array [1.. 2] of Element; var PA: ^DArray; n, i: integer; begin Write('Введите количество элементов '); Readln(n); {выделяем необходимый участок памяти для динамического массива} GetMem(PA, SizeOf(Element) * n) ; {введем элементы массива с клавиатуры} for i:= 1 to n do Read(PA^[i]); {выведем массив на экран} for i: = 1 to n do Write(PA^[i]: 2); FreeMem(PA, SizeOf(Element) * n); PA:=nil; ………. end. После того, как память освобождена, указателю следует присвоить значение nil во избежание в дальнейшем неприят- ностей. Для преобразования типов указателей используется нетипизированный указатель типа Pointer, который может иметь значение указателя любого другого типа. Пример: program p76; var р: pointer; pb: ^byte; 131