條件斷點的設定和應用

來源:互聯網
上載者:User

什麼是條件斷點?

 

條件斷點就是帶有一個條件運算式的斷點,在調試中,只有這個條件運算式為真時,程式到達斷點時,才會暫停。

而對於普通的斷點,只要程式到達該斷點是,就會暫停。這個條件運算式必須能被調試器識別和求值,,比如說在watch視窗裡

可以識別和求值的變數同樣也可以在條件運算式裡被識別和求值。這大大方便了我們調試某些問題,比如說,你在迴圈體內設定了

一個斷點(1000次迴圈),而這個bug在迴圈到999次時才發生,你可以通過條件斷點來設定迴圈到999次然後暫停。利用普通的

斷點你不能實現這一點。

 

如何設定條件斷點?

 

1. VC 6.0: 

   ,先在你要設定斷點的位置設定好斷點,然後按alt + F9,彈出breakpoints對話方塊,如所示。

 

 

 

 

    選中需要設定條件的斷點,然後點擊condition,然後就會出現break condition這個對話方塊,這個對話方塊就是設定條件斷點的地方。

    從上到下有三個輸入框:

    1.  輸入一個運算式,當運算式的值發生變化時,斷點會暫停,否則不暫停

    2、設定查看的數組或是結構的需要watch的個數

    3. 設定迴圈過多少次 才暫停。

 

這個例子中,設定迴圈999次後暫停,輸入的值為999.注意,這個次數必須在合理範圍內。否則就是失去了意義。

 

2. 對於VS2008:

   先設定斷點,按alt + F9,或者是從菜單(Debug->Window->breakoints),選中需要設定條件的斷點,按右鍵,選中condition,然後出現以下對話方塊: 

 

 

輸入條件運算式,選中is true時,該條件運算式為true的時候,程式會break。

當選中has changed時,該運算式的值發生改變時,程式會break。

運算式可以是一個變數,也可以是一個常規運算式。(前提是可以被debugger識別和求值),可參照watch視窗。

 

 

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.