Составители:
Рубрика:
130
var
pi : ^Integer; {описываем указатель на
целую переменную}
рг: ^ Rеа1; {описываем указатель на
вещественную переменную}
begin
{выделяем память для первой динамической
переменной}
New (pi) ;
{присвоим значение динамической переменной}
pi ^: = 25;
Writeln (рi^) ; {выводим ее значение на экран}
{выделяем память для первой динамической
переменной}
New(pr) ;
pг ^:= 0.5;
Writeln (рr^) ; {выводим ее значение на экран}
end.
Процедурой GetMem удобно пользоваться, когда необ-
ходимо создать структурированную динамическую перемен-
ную, например, динамический массив. В массиве элементы
имеют один тип. Размер, занимаемый n элементами массива,
можно получить умножив размер одного элемента на n. А раз-
мер элемента возвращает функция SizeOf.
function SizeOf(<идентификатop тuпa>): integer;
Динамические переменные удаляются из памяти проце-
дурами Dispose или FreeMem.
procedure Dispose(var P:<указатель>);
Эта процедура освобождает весь участок памяти, выделенный
под данную динамическую переменную.
procedure FreeMem(var P: Pointer; Size: Word);
Данная процедура освобождает участок памяти, размер кото-
рого определяет параметр Size.
Приведённые процедуры обычно используются
var
pi : ^Integer; {описываем указатель на
целую переменную}
рг: ^ Rеа1; {описываем указатель на
вещественную переменную}
begin
{выделяем память для первой динамической
переменной}
New (pi) ;
{присвоим значение динамической переменной}
pi ^: = 25;
Writeln (рi^) ; {выводим ее значение на экран}
{выделяем память для первой динамической
переменной}
New(pr) ;
pг ^:= 0.5;
Writeln (рr^) ; {выводим ее значение на экран}
end.
Процедурой GetMem удобно пользоваться, когда необ-
ходимо создать структурированную динамическую перемен-
ную, например, динамический массив. В массиве элементы
имеют один тип. Размер, занимаемый n элементами массива,
можно получить умножив размер одного элемента на n. А раз-
мер элемента возвращает функция SizeOf.
function SizeOf(<идентификатop тuпa>): integer;
Динамические переменные удаляются из памяти проце-
дурами Dispose или FreeMem.
procedure Dispose(var P:<указатель>);
Эта процедура освобождает весь участок памяти, выделенный
под данную динамическую переменную.
procedure FreeMem(var P: Pointer; Size: Word);
Данная процедура освобождает участок памяти, размер кото-
рого определяет параметр Size.
Приведённые процедуры обычно используются
130
