問題タブ [memcheck]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
173 参照

c++ - テストしたプログラムがクラッシュした場合、Valgrind レポートは信頼できますか

そのため、プログラムで Valgrind memcheck を実行していますが、実行するとプログラムがクラッシュします。おそらく、Valgrind によって実行が遅くなるタイミングの問題が原因です。

しかし、私はさまざまな場所で記憶を失っているという何らかのレポートを受け取ります。プログラムがクラッシュしている場合、これは信頼できますか? つまり、プログラムがクラッシュした場合、未処理のメモリが残ると想定できます。valgrind はこれが事実であることを認識し、このメモリを別の方法で処理できますか?

たとえば、「確実に失われた」メモリのレポートがいくつかあります。彼らは信頼されるべきですか?

0 投票する
0 に答える
3535 参照

linux - 行の内部 valgrind エラーのように見える valgrind の失敗。どうやって進める?

CentOS で valgrind を使用してメモリ リークをデバッグしようとしています。ただし、valgrind は失敗します。

これを実行すると:

メモリリークを除いて、プログラムは問題なく動作します。

これを実行すると:

valgrind はすぐに終了します。私がこのように実行したときも同様です:

ログ ファイルには、特に次の行があります。

これは valgrind 内のエラーのようです。Valgrind バージョン: valgrind-3.6.0。このエラーの原因を教えてください。問題を修正して valgrind を実行するにはどうすればよいですか?

0 投票する
1 に答える
1017 参照

ios - iOS シミュレーターとデバイスで valgrind を実行することは可能ですか?

非常に大規模なプロジェクトでヒープ オーバーフローをデバッグする必要があります。valgrind で少し遊んだ後、C でヒープ ブロック オーバーランを検出するのに最適なツールのように思えたので、これを使って iOS アプリを実行したいと思います。

OS X Yosemite のトランクから valgrind をビルドしてインストールし、意図的なヒープ オーバーフローを含むテスト プログラムを作成し、valgrind がそれらをキャッチして報告することを確認しました。

今、シミュレーターでテストアプリを実行したいと思います。execl() を使用して iOS シミュレーターで実行できると読みましたが、実行すると、コンソールに次のエラーが表示されます。

dyld: LC_DYLD_INFO ロード コマンドがありません

その後、アプリは dyldbootstrap::rebaseDyld() で EXC_BAD_ACCESS でクラッシュします。ここで他に何か必要ですか?Valgrind は明らかに arm64 もサポートするようになりました。valgrind 実行可能ファイルをアプリと一緒にパッケージ化して、デバイスで実行することはできますか?

0 投票する
1 に答える
51 参照

c - メモリー・ポインター演算を行うときに valgrind レポート・メモリーが失われないようにするにはどうすればよいですか?

私は自分のソフトで valgrind の memcheck を使用していますが、これには問題があります。何らかの理由で、ストアの前に malloced ポインターを変換し、使用時に元に戻す必要があります。

0 投票する
0 に答える
299 参照

c++ - C++ Valgrindエラー条件付きジャンプまたは移動は、初期化されていない値に依存します

以下で強調表示されている行で valgrind がエラー (条件付きのジャンプまたは移動は初期化されていない値に依存する) を返すため、C++ コードに問題があります。「 type 」を空の文字列で初期化しようとしましたが、うまくいかないようです。ここで何か助けていただければ幸いです。

よろしくお願いします。

ナンダネーター

0 投票する
2 に答える
4591 参照

c - VALGRIND サイズ 8 の無効な読み取り、リンクされたリスト、ノードの解放

Valgrind が不平を言っている理由を特定しようとしています。

私のコードが悪い動作を生成する理由を理解できるように、誰かが私にヒントを与えることができれば、私は非常に感謝しています.

構造体の配列を作成しました。各エントリは、構造体から作成されたリンク リストの先頭です。今、構造体の配列の各連結リストの要素を解放したいポイントにいます。

しかし、Valgrind は次のように言っています。

それは欠陥のある機能のようです

構造は次のようになります。

私はあなたの助けを楽しみにしています。

0 投票する
0 に答える
666 参照

c - Valgrind、無効な読み取り、fgetc

みなさんこんばんは。

各文字を分析してストリームからの値をチェックする関数を作成しました。文字が特定の記号の値を持っている場合、コードはプログラム内でより深い処理を行う必要があります。

すべて正常に動作しますが、Valgrind は使用されている fgetc 関数について不平を言っています。理由がわかりません。

以下に私のコードがあります:

誰かが Valgrind のメッセージの理由を教えてくれたら、とてもありがたいです。私はアイデアがありません。前もって感謝します。

0 投票する
1 に答える
179 参照

c++ - Memcheck - メモリ リークの不明なソース モジュール

私は C++ から始めて、memcheck を使用してプログラムのメモリ リークをチェックしています。

(いつ...)リークがある場合、解放されていない などを使用する出力を取得しますUnfreed memory allocations remaining。これらには通常、ソース ファイルと割り当ての行番号が付随しているため、簡単に修正できます。newmalloc

ソースモジュールが としてリストされている場合もありますが、私の場合unknown line:0は への呼び出しnewです。memcheck が呼び出しが行われたことを認識しnewている場合、これがどこから来たのかがわからないのはなぜですか? 私はこれを回避しようとしているだけなので、これらのリークがどこから来ているのか、いくつかのアイデアを得ることができます.