Tipuri de date - pointeri

Extras din referat:

Multimea de valori ale tipului predefinit de date pointer(indicator) consta din adrese şi valoarea specială nil. Însă, spre deosebire de tipurile de date referinţă adresele cărora identifică numai variabilele dinamice ce aparţin tipului de bază, valorile de tip pointer pot identifica variabile dinamice de orice tip. Evidennt, valoarea nil nu identifică nici o variabilă dinamică. Prin convenţie, tipul de date pointer este compatibil cu orice tip de date referinţă. Operaţiile care se pot face cu valori de tipul de date pointer sînt = şi < >. Valorile de acest tip nu pot fi citite de la tastatură şi afişate pe ecran. O variabilă de tip pointer se introduce printr-o declaraţie de tipul: Var p: pointer;

Întrucît astfel de declaraţii nu conţin informaţii despre tipul de bază, tipul variabilei dinamice p^ este necunoscut. Prin urmare , variabilele de tip pointer nu pot fi dereperate, iar scrierea caracterului ^ dupa astfel de variabile constituie o eroare. Programul ce urmeză ilustrează utilizarea variabilelor de tip pointer pentru memorarea temporară a valorilor variabilelor de tip referinţă .

Program P134;

{ Tipul de date pointer }

var p : pointer;

i, j : ^integer;

x, y : ^real;

r, s : ^string;

begin

{ p va identifica o variabila dinamica

de tipul integer }

new(i); i^:=1;

p:=i;

new(i); i^:=2;

j:=p;

writeln('j^=', j^); { se afiєeaza 1 }

{ p va identifica o variabila dinamica

de tipul real }

new(x); x^:=1;

p:=x;

new(x); x^:=2;

y:=p;

writeln('y^=', y^);

{ se afiєeaza 1.0000000000E+00 }

{ p va identifica o variabila dinamica

de tipul string }

new(r); r^:='AAA';

p:=r;

new(r); r^:='BBB';

s:=p;

writeln('s^=', s^); { se afiseaza AAA }

readln;

end.

Domeniul pricipal de utilizare a variabilelor de tip pointer este gestionarea memoriei interne a calculatorului. În Turbo Pascal alocarea variabilelor dinamice se execută într-o zonă specială a memoriei interne numită heap(grămadă) . Adresa de început a heap-ului, numită adresa de bază , este depusă în variabila predefinită de tip pointer HeapOrg. Variabila de tip pointer HeapPtr conţine adresa primei locaţii libere , numită vîrful heap-ului(fig. 1).

Descarcă referat

Pentru a descărca acest document,
trebuie să te autentifici in contul tău.

Structură de fișiere:
  • Tipuri de Date - Pointeri.ppt
Alte informații:
Tipuri fișiere:
ppt
Nota:
8/10 (1 voturi)
Nr fișiere:
1 fisier
Pagini (total):
19 pagini
Marime:
33.47KB (arhivat)
Publicat de:
NNT 1 P.
Nivel studiu:
Facultate
Tip document:
Referat
Domeniu:
Limbaje de Programare
Predat:
la facultate
Materie:
Limbaje de Programare
Profesorului:
Gaina Ina,Grigorie Vasilache
Sus!