[next] [prev] [prev-tail] [tail] [up]

#### Freemem

Declaration:
  Procedure Freemem (Var P : pointer; Count : Longint);
Description:
  Freemem releases the memory occupied by the pointer P, of size Count (in bytes), and returns it to the heap. P should point to the memory allocated to a dynamic variable.
Errors:
  An error will occur when P doesn’t point to the heap.
See also:
  Getmem (506), New (539), Dispose (482)

Listing: refex/ex28.pp

Program Example28;
{ Program to demonstrate the FreeMem and GetMem functions. }
Var P : Pointer;
MM : Longint;
begin
{ Get memory for P }
MM:=MemAvail;
Writeln ('Memory available before GetMem : ',MemAvail);
GetMem (P,80);
MM:=MM-Memavail;
Write ('Memory available after GetMem : ',MemAvail);
Writeln (' or ',MM,' bytes less than before the call.');
{ fill it with spaces }
FillChar (P^,80,' ');
{ Free the memory again }
FreeMem (P,80);
Writeln ('Memory available after FreeMem : ',MemAvail);
end.

[next] [prev] [prev-tail] [front] [up]