ReallocMem

Bula
ReallocMem
Moduł: System
procedure ReallocMem(var P: Pointer; Size: Integer);

Procedura realokuje pamięć zaalokowaną wcześniej za pomocą GetMem, AllocMem lub ReallocMem. W zależności od przekazanych parametrów może się zachować na cztery różne sposoby:

  1. Jeżeli P jest równe Nil i Size jest równe zero to procedura nic nie robi.
  2. Jeżeli P jest równe Nil i Size jest różne od zera to procedura zaalokuje blok pamięci o podanym rozmiarze i ustawi P tak, aby wskazywało na ten blok.
  3. Jeżeli P nie jest równe Nil i Size jest równe zero to procedura zwalnia blok pamięci pokazywany przez P i ustawia P na Nil.
  4. Jeżeli P jest różne od Nil i Size jest różne od zera to procedura zmienia rozmiar bloku pamięci pokazywanego przez P do wartości podanej przez Size. Dane umieszczone w tej pamięci nie są zmieniane, jednakże w przypadku gdy blok jest powiększany zawartość nowo zaalokowanej pamięci jest niezdefiniowana. Jeżeli blok nie może zostać zmieniony w miejscu gdzie się znajdował zostaje przeniesiony w nowe miejsce, a wskaźnik P jest odpowiednio zmieniany.

Zobacz też:

0 komentarzy