Diferență între revizuiri ale paginii „PC Laborator 12”

De la WikiLabs
Jump to navigationJump to search
(Pagină nouă: = Obiective = La sfârșitul acestui laborator studenții vor fi capabili: * să definească și să utilizeze tipuri de date pointer; * să folosească pointeri pentru a putea mo...)
 
Linia 6: Linia 6:
 
* să aloce, să folosească și să elibereze memorie HEAP, în mod dinamic;
 
* să aloce, să folosească și să elibereze memorie HEAP, în mod dinamic;
 
* să utilizeze <code>valgrind</code> pentru a diagnostica pierderile de memorie.
 
* să utilizeze <code>valgrind</code> pentru a diagnostica pierderile de memorie.
 +
 +
= Tipuri de date pointer =
 +
 +
Un '''pointer''' reprezintă o variabilă care stochează o adresă în memoria dedicată aplicației. Tipul variabilei de tip pointer specifică tipul datei care va fi găsit la adresa respectivă.
 +
 +
O variabilă de tip pointer se definește în felul următor:
 +
 +
<tip_data> * <nume_variabila>;
 +
 +
Spre exemplu:
 +
 +
<syntaxhighlight lang="c">
 +
int * pa;
 +
</syntaxhighlight>
 +
 +
Variabila de tip pointer <code>pa</code> nu memorează un întreg, ci o adresă în memorie, iar de la adresa respectivă se poate citi un întreg. Acest lucru se numește indirectare simplă.

Versiunea de la data 30 decembrie 2015 13:23

Obiective

La sfârșitul acestui laborator studenții vor fi capabili:

  • să definească și să utilizeze tipuri de date pointer;
  • să folosească pointeri pentru a putea modifica variabilele trimise ca argumente unor funcții;
  • să aloce, să folosească și să elibereze memorie HEAP, în mod dinamic;
  • să utilizeze valgrind pentru a diagnostica pierderile de memorie.

Tipuri de date pointer

Un pointer reprezintă o variabilă care stochează o adresă în memoria dedicată aplicației. Tipul variabilei de tip pointer specifică tipul datei care va fi găsit la adresa respectivă.

O variabilă de tip pointer se definește în felul următor:

<tip_data> * <nume_variabila>;

Spre exemplu:

int * pa;

Variabila de tip pointer pa nu memorează un întreg, ci o adresă în memorie, iar de la adresa respectivă se poate citi un întreg. Acest lucru se numește indirectare simplă.