0

私は単純な問題を抱えています:calloc()を使用して割り当てられたメモリを解放すると、プログラムがsegfaultsします。バックトレースの最後の関数は_IO_str_pbackfailです。現在、iccバージョン12.1.6を使用しています。スタックオーバーフローに関する他の質問によると、これは通常、ヒープの破損が原因です。callocソースを見ると、関数は割り当てられたスペースの最初の16バイトにデータを書き込んでいるようです。これらのバイトにウォッチポイントを追加しようとしましたが、デバッガーは悪意のある書き込みを検出していません。この問題を追跡する方法について何かアイデアはありますか?

4

1 に答える 1

1

MALLOC_CHECK_=2またはvalgrindで実行してみてください。

于 2012-11-26T00:58:12.270 に答える