Oppure

Loading
03/07/07 14:43
Zani88
Supponiamo di avere la seguente struttura:
struct str{
int lun;
char *pun;
} rec;

per allocarla faccio

rec *x;
x = (rec*)calloc (1,sizeof(rec));
x->pun = (char *)calloc(10,sizeof(char));

giusto?

e per liberare lo spazio occupato bisogna fare
free (x);
o
free (x->pun);
free (x);
?

Rispondete che poi ho altri dubbi!
aaa
06/07/07 17:09
lorelapo
La prima parte è giusta, ma la seconda no per rilasciare un parte di memoria bisogna effettuare il rilascio per ogni parte di memoria allocata, in quanto sono tutte indipendenti per cui :
free(strutturaxy->puntatore);
free(strutturaxy);
aaa