Problème de fuite mémoire en C, comment détecter et corriger ?
Problème de fuite mémoire en C, comment détecter et corriger ?
Bonjour, j’ai un programme en C qui semble avoir une fuite mémoire. Après quelques heures, il consomme toute la RAM. Comment je peux détecter et corriger ça ?
-
david_du_59
- Messages : 1
- Inscription : ven. sept. 27, 2024 7:24 pm
Re: Problème de fuite mémoire en C, comment détecter et corriger ?
Tu peux utiliser Valgrind pour détecter les fuites de mémoire. Il te dira où tu alloues de la mémoire sans la libérer ensuite.
-
pcmaster67
- Messages : 1
- Inscription : sam. juil. 08, 2023 7:24 pm
Re: Problème de fuite mémoire en C, comment détecter et corriger ?
Valgrind c’est top, mais attention, ça peut ralentir ton programme. Sinon, tu peux vérifier manuellement tous tes malloc() et free() pour t’assurer que tout est bien libéré.
Re: Problème de fuite mémoire en C, comment détecter et corriger ?
Je rajouterais que l’utilisation de fonctions comme calloc() au lieu de malloc() peut aider, car il initialise la mémoire à zéro. Mais ça ne résout pas les fuites, c’est juste une bonne pratique.
Team Linux depuis 2005, jamais revenu en arriere
Re: Problème de fuite mémoire en C, comment détecter et corriger ?
Merci pour les conseils ! Je vais tester Valgrind ce soir. Pour calloc(), je note, mais j’ai surtout besoin de trouver cette fichue fuite.
-
la_scriptkid
- Messages : 38
- Inscription : dim. mai 25, 2025 7:24 pm
Re: Problème de fuite mémoire en C, comment détecter et corriger ?
Si tu utilises Valgrind, regarde bien les messages de sortie. Les fuites sont généralement marquées comme "definitely lost". Ça te donnera une idée précise de où agir.