最も単純なブレークポイントは、プログラムが指定された場所に達した ときに直ちに停止させるというものです。あなたは、それ以外にも、ブレーク ポイントの条件を記述することができます。条件は、あなたの プログラミング言語における論理式と同一になっています(See section 式)。 条件付きのブレークポイントは、プログラムがそこに達した時に式を 評価します。そして、条件が真のときにのみ、プログラムが停止します。
ブレーク条件には副作用があり、あなたのプログラム内の関数をコールする かもしれません。これは妙に思えるかもしれませんが、これらの効果によって、 同一アドレスの異なったブレークポイントを有効にすることなしに完璧に 断定できるのです(このケースにおいて、GDB は最初に異なったブレーク ポイントを見て、その条件をチェックすることなくプログラムを停止します)。 ブレークポイントのコマンドは、通常、より簡単なものであり、ブレーク ポイントに達した時の結果として副作用が起こるのはフレキシブルなことで あることに注意して下さい(see section ブレーク時のコマンドの起動)。
ブレーク条件は、ブレークポイントが設定された時に、`break' コマンドの `if' という引数を指定することによって記述できます。See section ブレークポイントの設定方。 これらは、いつでも好きなときに `condition' コマンドを使って 変更することができます:
condition bnum expression
condition bnum
ブレークポイントの条件の特別なケースとして、ブレークポイントが指定 された回数に達した時に停止するというものがあります。これは便利な 機能であり、それを実現するには、ブレークポイントを無視する回数 という特別な方法を用います。それぞれのブレークポイントには、整数である 無視する回数が存在します。たいていの場合無視する回数はゼロであり、 従って何の効果もありません。しかし、もし、無視する回数が正の数で あるような場合にプログラムがブレークポイントに達した場合、停止する かわりに、無視する回数から1を引いて処理を継続します。結果として、無視 する回数の値が n の場合、ブレークポイントは、次の n 回 そこに達する間、停止しないことになります。
ignore bnum count
cont count
もし、ブレークポイントが正の無視する回数と条件を持っている場合、 条件の方はチェックされません。ひとたび無視する回数がゼロになったならば、 条件がチェックされるようになります。
あなたは、条件付きの無視する回数を、いついかなる時でも宣言することが できる `$foo-- <= 0' のようなデバッガ上の簡易変数を使って、 記録を保管することができることを覚えておいて下さい。 See section 簡易変数。