Programação  
 
Conhecimento computador >> Programação >> C /C + + programação >> 
Como encontrar um vazamento de memória no Linux
Diferentemente das linguagens de programação mais recentes como Java e Python , linguagens de programação como C exigem que o programador de gerir a sua própria memória . C oferece facilidades para solicitar memória livre e devolvê-lo para o sistema operacional, mas nada mais. Porque linguagens como C não oferecem nenhum mecanismo de coleta de lixo para limpar os objetos que não estão mais em uso, o programador deve ser vigilante e remover objetos quando eles não são mais necessários . Se um programa não se livrar de seus objetos não utilizados , o vazamento de memória resultante pode fazer com que o sistema operacional para funcionar. Instruções
1

Instalar os " valgrind " depuração suite.

O pacote valgrind está disponível gratuitamente em todas as distribuições Linux. Para instalá-lo em distribuições derivadas do Debian como o Ubuntu , digite " sudo apt- get install valgrind . " No RedHat ou Fedora , digite " sudo yum install valgrind . "
2

compilar seu programa com símbolos de depuração .

O compilador mais comum para programas em C em sistemas Linux é o gcc . Use o flag " - g" para instruir gcc para incluir símbolos de depuração para o binário que ele cria . ( Símbolos de depuração são necessários para depuradores como valgrind para se referir a problemas específicos em seu código ) .

Se você tem um programa em C com o nome " memoryhog.c ". por exemplo , você compilá-lo usando este comando: gcc- g memoryhog.c
3

Execute binário do seu programa através valgrind

A menos que você diga a ele de outra forma , gcc . vou citar o seu programa " a.out ". Para executar o binário chamado " a.out " usando valgrind , digite o seguinte comando: . Valgrind - check- vazamento = full - show- alcançável = yes /a.out
4

Inspecione a saída de valgrind

Se todos os vazamentos de memória foram corrigidos , valgrind relatórios " Todos os blocos de heap foram libertados - . nenhum vazamento é possível" .

Se quaisquer vazamentos de memória estão presentes, valgrind lista o número da linha em que o vazamento é criado.

Anterior :

Próximo : No
  Os artigos relacionados
·Como converter caixa de texto Valor de Int C + + 
·Como Teach Yourself Visual C 6 
·Como fazer cordas minúsculas em C + + 
·Como usar um programa C Como verificar os números de A…
·Como corrigir a biblioteca C + + Visual Runtime 
·Como calcular o tamanho dos elementos em Buffers em C 
·Ferramentas C vazamento de memória 
·Como escrever um + + Programa Média C 
·Como fazer um + + Bicho Programa Porteiro C mais expres…
·Como criar uma função no Microsoft Visual C + + 
  Artigos em destaque
·Como compilar C + + arquivos de cabeçalho 
·Como executar um desenvolvedor Xcode iPhone 
·Como reverter um valor em C + + 
·Como Obter a Linha Número de um arquivo de entrada em …
·Como escrever um analisador de C 
·Como converter de int para Char 
·Como compilar C e C + + Juntos 
·Como fazer um botão de som no Xcode 
·Tipos de ataques de saturação de buffer 
·Como Escrever um Programa de Transferência de soquete …
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados