Fonction malloc

Trollien Messages postés 39 Date d'inscription jeudi 27 février 2003 Statut Membre Dernière intervention 31 janvier 2006 - 14 nov. 2003 à 21:49
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 14 nov. 2003 à 22:06
Salut,
j'aurai une question concernant le fonctionnement de l'allocation de memoire en c.

Si j'alloue de la memoire avec la fonction malloc(...), est ce qu'à la sortie du main cette allocation est libérée automatiquement ou est ce qu'un appel à la fonction free(...) est obligatoire?

Sous XP Home, je ne constate pas de perte de memoire après une 30aine d'exécutions, est ce pareil sur tt les systèmes?

P.S: il s'agit d'un prog de compression par statistique suivant la construction d'un arbre d'huffman.

1 réponse

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
14 nov. 2003 à 22:06
Mettre le free correspondant a chaque malloc est une saine habitude a prendre. Il est certain que sur les systemes modernes toutes les ressources allouees par un processus sont liberees a sa sortie mais il vaut garder les bonnes habitudes. Les Winbebes tendant a disparaitre, faire comme MS et les plus grands editeurs, ne plus les prendre en charge et ils disparaitront encore plus vite.
BruNews, ciao...
0
Rejoignez-nous