2016-09-11 10 views
0

これはパイプの夢かもしれないことを知っています。だからここちょうど更新された変数の値を自動的に印刷する方法

はコードです:

int f() 
{ 
    int i = 0; 
    int j = 0; 

    for (; i < 10 && j < 100; ++i, j = i * 2) { 
    i = f2(); 
    } 
} 

だから、(fは機能するようになると)、私は「DISP IJ」を実行して、iとjプリントの値は、以上の各単一ラインステップの後にすることができますでる。それはうまく動作します。

しかし、グローバル設定またはように、私は「表示」コマンドを入力する必要はありませんいくつかのトリックがあり、すべてのローカル変数は自動的にそれらの値が更新されると、彼らは唯一の印刷されて印刷されています。

もう1つの言葉では、i = f2()行で、jの値が印刷されません。

+0

条件付き印刷をお探しの場合は、コード内でprintステートメントを使用する方がよいでしょう。 –

答えて

1

ijにウォッチポンを設定することができます。 iの値は、あなたはまた、if<condition>を使用して、いくつかの条件に基づいて値を印刷することができます

を変更するたびに、この

(gdb) watch i

のようにそれは自動的にiの値を出力します。私にとってこの

(gdb) watch i if j==4

同様 i = f2();ラインでjの値を印刷するには問題はありません。

関連する問題