GNU/Linux ◆ xterm ◆ zsh 3148 views

https://vinipsmaker.wordpress.com/2013/12/20/meu-erro-favorito-de-cc-falha-de-segmentacao/

Código-fonte do programa de teste: https://gist.github.com/vinipsmaker/8090952

A epifania ocorre no final da sessão, quando você nota que a variável cliente não é completamente inicializada, deixando o atributo compras apontar para lixo de memória. Através do gdb, você fica sabendo exatamente que pedaço do código quebrou o programa inteiro deixando as variáveis em estados inconsistentes.

Códigos em produção usando C++ não são assim tão frágeis. O erro poderia ter sido evitado usando C++ moderno, mas a intenção foi demonstrar como encontrar erros de falha de segmentação usando o gdb pode ser fácil.