Allocation de la memoire en langage C

Fermé
crstph Messages postés 6 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 11 juin 2009 - 3 mai 2009 à 00:45
 loupius - 3 mai 2009 à 00:55
Bonjour,
je programme avec les listes en langage C et j'ai le probleme suivant
quand je veux ajouter un element à une liste j'appelle une fonction nommée "ajout" qui est écrit par moi
je remarque que quand j'utilise malloc et aprés la fin de l'execution de la fonction "ajout" l'espace memoire allouée est perdue(liberé) et l'element ajouté est aussi perdue
donc comment faire pour que l'allocation dans une fonction soit depend de la programme principale et non depend
de la foction dans laquelle l'allocation est faite
merci beaucoup

1 réponse

Non, l'espace alloué, où qu'il l'ait été, ne se perd pas, seulement à la fin du programme.
Non, l'espace alloué ne se perd pas, c'est le pointeur sur cet espace que l'on perd.
Si on a compris cela, il n'y a plus de problème; il suffit de ne pas perdre ce pointeur.
Bon courage.
0