This is an old revision of the document!
În acest laborator veţi învăţa să:
Funcţii pentru alocarea memoriei (din stdlib.h):
type* ptr = malloc(size_t size);
Unde size_t este un tip întreg fără semn (unsigned), dependent de arhitectură (pentru arhitectura 32bit, acesta este unsigned int).
Funcţia alocă o zonă continuă de memorie având dimensiunea de size octeţi şi returnează un pointer void* cu adresa de început a zonei de memorie alocată. Pentru a schimba tipul acestui pointer se foloseşte operatorul cast.
Exemplu:
int *a = malloc( 100 * sizeof(int) );
Am alocat o zonă de memorie de 100 de elemente de tip int. Tipului pointerului returnat de funcţie, void*, i se face cast automat în int*.
Funcţia sizeof(type) returnează numărul de octeţi ocupaţi de tipul type.
type* ptr = calloc(size_t num, size_t size);