MATLAB困在迴圈中的除錯方法 和 跳出多層迴圈

2021-08-19 03:55:02 字數 607 閱讀 7025

發現在matlab 2017版本的編輯器視窗中,執行欄中執行按鍵在程式執行時會變成暫停按鍵。

在程式迴圈比較多的時候,可以在一些關鍵分支處用上disp語句,可以幫助在命令視窗中觀察程式的運**況,

當發現程式被困在迴圈中時,就可以直接按下暫停鍵,此時程式會暫停且所有變數值都會保留,按下暫停鍵後相應位置會變成下圖所示的除錯欄,然後就可以在此基礎上根據當前變數值用單步或斷點等方法找到問題所在了。

另外,在matlab程式中迴圈巢狀多,有需要從內層迴圈一層一層跳出外層迴圈時,可以用設定標誌變數的方式實現。即在內層迴圈中某條件達到時,設定相應標誌位為某值,然後用break或者continue跳出該層迴圈,在到達外一層迴圈時就可以再判斷該標誌位的狀態,來決定是否需要繼續跳出此層迴圈或是需要在此層迴圈中執行某些操作,以此類推直到跳出最外層迴圈。

死迴圈中的cin

在編寫程式時,遇到了乙個致命的問題,原本是想使用cin輸入乙個int型的數值,但是錯誤的輸入了char或者string型,導致程式進入死迴圈。類似程式如下 include using namespace std int main while i 0 return 0 定義了乙個int型的 i 但是當...

巢狀迴圈中的bug

在專案中遇到以下問題 該功能在實際投產中使用較少,列表記錄也不是很多,隨著時間的流逝資料逐漸增多,問題出現 列表中有些資料不顯示 img 圖中黑框部門,檢查了很長時間。發現該資料是使用兩層巢狀顯示,其中迴圈次數又是取使用者設定中的分頁條數。如果資料太多,分頁條數設定為10,很多記錄就查不到,內迴圈只...

Python迴圈中的else

python迴圈中的else如果此迴圈迴圈完畢,那麼執行else後的語句,如果被break了,則不執行while中的else 正常情況 i 0while i 5 print i i 1else print else clause out put 01 234else clause 因為while迴圈...