22/03/10 13:58
Ocentral
MA quando si usa ^ per i puntatori?
Grazie
aaa
22/03/10 18:57
Poggi Marco
Il simbolo ^, è appunto il simbolo per identificare i puntatori.
La sintassi per l' utilizzo è la seguente:
Per la dichiarazione (dichiaro un puntatore integer: )
var i:^integer; {dichiarazione di un puntatore integer}
d:integer;
Per l' utilizzo:
...
i:=@d; {assegno ad i l' indirizzo di d}
i^:=500; {memorizzo nell' area di memoria puntata da i 500}
{notare che il simbolo ^ va dopo il nome della variabile}
writeln('d= ',d);
...
Ultima modifica effettuata da Poggi Marco 22/03/10 18:59
aaa
22/03/10 21:38
In pascal a che servono i puntatori?
26/03/10 16:44
Phi
Come faccio a ridimensionare un puntatore, senza cambiarlo.
In un programma ho scritto:
(p : pchar)
(dimres : longint(è minore della dimensione attuale di P))
getmem(P,dimres);
ma poi P non contiene più il contenuto di prima.
A me interessa tagliare via l'ultima parte.
aaa
26/03/10 17:46
Poggi Marco
Non ho ben capito il tuo problema. Ad ogni modo, GetMem alloca dinamicamente un' area di memoria, e salva l' inizio sulla variabile puntatore.
Se utilizzi GetMem per riallocare un puntatore, l' area di memoria precedentemente allocata, non è più raggiungibile o riutilizzabile.
Per liberare la memoria allocata con GetMem, esiste il comando
FreeMem( <puntatore>, <dimensione> ).
aaa
30/03/10 18:19
Phi
Devo aumentare la dimensioni senza perdere la memoria
aaa