malloc() free() et la gestion memoire... question dure ;)
Un petit exemple pour commencer
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| // on alloue de la mémoire
pt1 = malloc (10*sizeof(char));
pt2 = malloc (sizeof(int));
// on fais des tas de trucs
...
...
...
// on libere la mémoire
free(pt1); pt1 = NULL; // pour que ça soit propre
free(pt2); pt2 = NULL; // pour que ça soit propre |
Comment le systeme sait-il qu'il faut liberer 10 octets pendant l'appel de free(pt1) alors qu'il n'en libere que 4 pour free(pt2) ???
(question annexe: si ya une table comment faire pour la consulter... )
Merci de me répondre ça fait longtemps que je me pose la question...