Cambiare la dimensione di un'area di memoria mediante Realloc()

Da Gambas-it.org - Wikipedia.
Versione del 10 mar 2016 alle 10:26 di Vuott (Discussione | contributi) (Creata pagina con "La funzione ''Realloc()'' consente di assegnare al ''Puntatore'' una nuova e differente dimensione di un'area di memoria precedentemente allocata con la funzione ''Assegnare...")

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

La funzione Realloc() consente di assegnare al Puntatore una nuova e differente dimensione di un'area di memoria precedentemente allocata con la funzione Alloc().


Mostriamo un semplicissimo esempio:

Public Sub Main()
 
 Dim p1, p2 As Pointer
 
' Allochiamo con la funzione "Alloc()" un'area di memoria pari a 4 byte:
  p1 = Alloc(SizeOf(gb.Byte), 4)
  
' Riallochiamo per una dimensione di 8 byte l'area di memoria precedentemente allocata di 4 byte:
  p2 = Realloc(p1, SizeOf(gb.Byte), 8)
  
' Liberiamo la memoria complessivamente allocata e puntata dalla variabile di tipo 'Puntatore' "p2":
  Free(p2)
  
End