條件斷點是IDE的一個重要功能,在IAR調試時候,經常跟蹤一個數據,但是對較大的buffer,用普通的斷點或live watch都不好跟蹤。
比如某個buffer里一個數,我們知道他在第幾個,但是卻從watch窗口里面看不到。
一是由於局部變量必須把程序停下了才能看到。
二是由於數據結構太大,一旦加到watch里面,如果全局觀察,大多數情況會很慢,並且極容易一點開折疊就發生軟件崩潰。
兩個解決方法:
1. 比如需要觀察的數據其下標是1500,先全速跑一下,估計下時間大約到1400多打斷點停下來。
看下是否快到1500了,然后一步一步運行,這種方法比較原始,不好控制。
2. 條件斷點。全速運行然后在特定條件下暫停觀察局部變量。
如下,變量j等於100時候停下了。
當運行到第100次時,自動停下。