ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Oracle Solaris Studio 12.3: dbx コマンドによるデバッグ Oracle Solaris Studio 12.3 Information Library (日本語) |
以下のコマンドにより、プログラムを修正できる場合があります。
assign コマンドは、expression の値を variable に割り当てます。dbx 内で使用すると variable の値が永久に変更されます。
assign variable = expression
pop コマンドは、スタックから 1 つまたは複数のフレームをポップ (解放) します。
カレントフレームをポップ
number 個のフレームをポップ
指定のフレーム数までフレームをポップ
ポップされた呼び出しはすべて、再開時に再び実行されて、プログラムに望ましくない変更が加えられる可能性があります。pop は、ポップされた関数にローカルなオブジェクトのデストラクタも呼び出します。
詳細については、「pop コマンド」を参照してください。
call コマンドを dbx で使用すると、ある手続きが呼び出されて、その手続きは指定どおりに実行されます。
call proc([params])
この手続きは、プログラムの一部を変更する可能性があります。dbx は、プログラムソースに呼び出しを組み込んだ場合と同様に、実際に呼び出しを行います。
詳細については、「call コマンド」を参照してください。
print expression, ...
式に関数呼び出しがある場合は、「call コマンド」 と同じ考慮事項が適用されます。C++ では、多重定義演算子による予期しない副作用にも注意する必要があります。
詳細については、「print コマンド」を参照してください。
when event-specification [modifier] {command; ... }
イベントが発生すると、command が実行されます。
ある行または手続きに到達すると、コマンドが実行されます。どのコマンドを出したかによって、プログラムの状態が変わる可能性があります。
詳細については、「when コマンド」を参照してください。
fix コマンドを使用すると、プログラムに対して、実行中の変更を加えることができます。
fix
これは非常に便利なツールですが、fix は変更されたソースファイルを再コンパイルして、変更された関数をアプリケーションに動的にリンクすることに注意してください。
fix と cont の制限事項を必ず確認してください。「メモリーリーク (mel) エラー」を参照してください。
詳細については、「fix コマンド」を参照してください。
cont at コマンドは、プログラムが実行される順序を変更します。実行は指定された行で継続されます。line. id は、プログラムがマルチスレッドの場合に必要です。
cont at line [ id ]
これにより、プログラムの結果が変更される可能性があります。