Aprèn Valgrind per a memory leaks pas a pas
Utilitza aquesta guia per entendre com Valgrind i Memcheck detecten fuites, lectures invàlides i mal ús de memòria en programes C i C++.
Flux per depurar fuites
Obrir guia de Valgrind
01
Compila per depurar
Compila amb símbols de depuració perquè Valgrind mostri referències útils de fitxer i línia.
02
Executa Memcheck
Llança el programa amb detecció de fuites i revisa les traces de crides reportades.
03
Corregeix i verifica
Elimina la fuita o l'accés invàlid i torna a executar Valgrind per confirmar que l'informe desapareix.
Rastreja assignacions fins al camí exacte del codi
Diferencia fuites, invalid reads i invalid frees
Detectar fuites de memòria
Flux per depurar fuites
Compila per depurar
Compila amb símbols de depuració perquè Valgrind mostri referències útils de fitxer i línia.
Executa Memcheck
Llança el programa amb detecció de fuites i revisa les traces de crides reportades.
Corregeix i verifica
Elimina la fuita o l'accés invàlid i torna a executar Valgrind per confirmar que l'informe desapareix.
FAQ sobre Valgrind i memory leaks
- Necessito símbols de depuració per a Valgrind?
- Pots usar Valgrind sense ells, però compilar amb -g fa que els informes siguin molt més fàcils d'entendre.
- Quina diferència hi ha entre definitely lost i still reachable?
- Definitely lost significa que el programa ha perdut memòria sense conservar cap punter. Still reachable pot continuar assignada en sortir del programa i no sempre indica un bug real.
- Valgrind també ajuda amb invalid reads?
- Sí. Memcheck pot reportar invalid reads, invalid writes, double free i altres usos incorrectes de memòria a més de fuites.
- Com trobo fuites de memòria pas a pas amb Valgrind?
- Compila amb -g, executa valgrind --leak-check=full ./el_teu_programa i revisa l'informe buscant 'definitely lost' o 'indirectly lost'. Segueix la traça fins al punt d'assignació.
Guies relacionades
Mou-te entre pràctica de Git i temes de depuració segons el que vulguis aprendre després.
Aprenentatge de Valgrind
Memory error detection and profiling toolkit
Aprenentatge de GDB
Depuració potent per a programes C/C++ amb execució pas a pas, punts d'aturada i inspecció de memòria.
Joc per practicar Git amb commits, branques i merges
Utilitza Game4Git per practicar Git online amb un playground visual. Fes canvis, crea commits, treballa amb branques i guanya seguretat abans d'usar Git en projectes reals.