CLion 2023.2 ヘルプ

メモリビュー

たとえば、データ処理の問題をデバッグするときに、実行中のプロセスの未加工メモリを表示する必要がある場合があります。このため、CLion はメモリビューを提供します。変数タブのポインタから、必要なアドレスを含むメモリ領域に移動し、プログラムのステップ実行とともに変更を確認できます。

メモリビューを表示

  1. デバッグツールウィンドウの変数タブで、目的のポインター変数を選択します。

  2. Control+Enter を押すか、変数のコンテキストメニューからメモリビューで表示を選択します。

    show a variable in memory view

    このオプションは、非ポインター変数でも使用できます。変数のアドレスは自動的に取得されます。

  3. メモリビューウィンドウには、最初に、選択したアドレスから始まる 256 バイトの領域が表示されます。ウィンドウの下部に、より高いメモリアドレスが表示されます。その後、他のポインターに対してメモリビューを呼び出すと、同じウィンドウでそれらがハイライトされ、必要に応じて領域が拡張されて、より多くのアドレスが表示されます。

    左側の列のコンテキストメニューを使用して、住所を非表示 / 表示またはコピーします。

    addresses column menu

    右側の列には、メモリ値に相当する ASCII 文字が表示されます。

  4. コードをステップ実行すると、CLion は現在表示されているメモリ領域で発生する変更をハイライトします。

    changes in memory during stepping

1 行あたりのバイト数を構成する

  • メモリビューに表示される列数 (1 行あたりのバイト数) を変更するには、App general gear plain をクリックして数値を選択します。

    Changing the number of columns in memory view

エディターでメモリビューを開く

  1. 変数(または監視式)タブの App general layout editor preview ボタンを使用して、エディターでメモリビューを開きます。

    Move memory view to editor

  2. このようにして、デバッグツールウィンドウとエディターで 2 つの独立したメモリウィンドウを開くことができます。

    multiple memory view windows

アドレスにジャンプ

  • メモリビューウィンドウのジャンプフィールドを使用して、特定のアドレスに移動します。アドレスを 16 進数として直接入力するか、ポインター変数またはポインターに評価される式を指定するか、演算子 &アドレスを使用して任意の変数のアドレスを取得できます。

    このフィールドのコード補完は、既知のシンボルから選択できます。

    completion in go to address

メモリを変更する

メモリビューは、オンザフライのメモリ編集をサポートします。

  • 変更したい領域にキャレットを置き、入力を開始します。新しい値がすぐに表示されます。

    Editing memory

関連ページ:

監視ポイント

ウォッチポイント (データブレークポイントと呼ばれることもあります) は、プログラムの実行全体を通じて特定の変数とその動作に焦点を当てる必要がある場合に役立ちます。プログラムが監視中のブレークポイントにアクセスするたびに、CLion は実行を一時停止するか、コンソールにログを記録します。ウォッチポイントを設定する変数または式を選択し、右クリックして監視ポイントの追加を選択します。ポップアップでウォッチポイントを構成します。追加のプロパティにアクセスするには、さらにをクリックするか、メインメニュー...

分解図

CLion では、逆アセンブルされたコードを開くことができますソースが利用可能な場合、任意のフレームに対してオンデマンド、ソースが利用できないときに強制的にそこに踏み込むこと、フレームの分解ビューを開くデバッグツールウィンドウで目的のフレームを右クリックし、逆アセンブルを選択します。逆アセンブリビューがソースコードと並んで開きます。開くと、分解ビューは現在選択されているフレームと同期したままになります。フレームが切り替わると、エディターと逆アセンブリビューの両方が実行ポイントまでスクロールする...