ポインターの境界違反の検出

ソースコードにポインター参照が含まれている場合、メモリーエラーをデバッグするため、これらの参照と割り当てられるバッファーの境界をチェックすると良いでしょう。インテル® デバッガーは、ポインターの境界を認識し、ソースコード中のポインターの境界違反を検出できます。ポインターの境界違反を検出すると、インテル® デバッガーは違反が発生した場所でアプリケーションの実行を停止し、[Console (コンソール)] ウィンドウに関連するソースコードを表示します。

次に例を示します。

Boundary exception: Accessing memory outside pointer boundaries.
 	main () at /home/test/bin/main.c:8
  8	        x[i] = 'A' + i;

ヒント

ポインターのアドレスと境界を表示するには、[Console (コンソール)] ウィンドウでデバッガーコマンド IDB SHOW BOUNDS EXPR を入力します (EXPR はポインターの名前)。

現在のアプリケーションの実行状態でこの情報を利用可能な場合は境界が表示されます。

この機能を利用するには、-check-pointers オプションを指定してソースコードをコンパイルする必要があります。 詳細は、インテル® コンパイラーのドキュメントを参照してください。

関連情報


このヘルプトピックについてのフィードバックを送信