方法 : ネイティブ ランタイム チェックを使用する

Visual C++ では、ネイティブ runtime_checks を使用して、次のような一般的なランタイム エラーをキャッチできます。

  • スタック ポインターの破損

  • ローカル配列のオーバーラン

  • スタックの破損

  • 初期化されていないローカル変数への依存性

  • 短い変数への代入によるデータの消失

最適化 (/O) するビルドで /RTC を使用すると、コンパイラ エラーが発生します。runtime_checks プラグマを最適化されたビルドに使用しても効果はありません。

ランタイム チェックが有効になっている状態のプログラムをデバッグすると、既定の動作では、ランタイム エラーの発生時にプログラムが停止し、デバッガーが起動されます。この既定の動作は、任意のランタイム チェックで変更できます。詳細については、「例外処理 (デバッグ)」を参照してください。

次に、デバッグ ビルドでネイティブ ランタイム チェックを有効にする方法と、ネイティブ ランタイム チェックの動作を変更する方法について説明します。

このセクションのその他のトピックでは、次の内容について説明します。

デバッグ ビルドでネイティブ ランタイム チェックを有効にするには

  • /RTC オプションを使用して、C ランタイム ライブラリのデバッグ バージョン (/MDd など) とリンクします。

ネイティブ ランタイム チェックの動作を変更するには

  • runtime_checks プラグマを使用します。

参照

処理手順

RTC sample

関連項目

runtime_checks

ランタイム エラー チェック

その他の技術情報

Visual Studio でのデバッグ