簡單聊聊VisualStudio的斷點調試


    這節聊聊如何使用VisualStudio進行斷點調試。

    在debug過程中,我們有時需要查看程序在運行到某一行代碼時,上下文中的變量或者一些其他的數據是什么樣的,我們就要設置斷點(Breakpoint)。斷點顧名思義,就是運行到打斷點的這一行,程序就中斷,暫停。下面就看看如何使用VisualStudio來斷點調試C#代碼。

 

    如何斷點:

    在VS中,如何為代碼設置斷點呢,有這么兩種形式:

    第一個就是直接在想要斷點的代碼行,設置,斷點位置如下圖,鼠標點擊代碼行的最前頭,出現紅點即設置完成,對應的代碼會出現紅色背景(命中斷點背景則是黃色)。

   

    另一種方式就是將鼠標點擊一下要斷點的行,激活鍵入光標,再按F9即可。

    (其實還有一種方式,沒有什么具體的實用價值:在想斷點的代碼行右擊鼠標彈出上下文菜單,選擇插入斷點即可。)

    

    設置好斷點后,就可以按F5或者點擊啟動即可開始調試代碼,但注意啟動模式要是Debug模式,Release是發布版本,不會命中斷點。之所以我們能斷點調試是因為在Debug模式下,代碼在編譯時會加入輔助元素,斷點才會有效,發布版本在編譯時不會加入這些輔助元素,所以斷點是無效的。另外額外說明一點,如果已經調試完成,可以使用發布版本運行一次,發布版本因為是純代碼編譯,運行性能要更好。

    

 

    調試代碼:

    當運行到斷點處時,程序會停下來,后續的代碼都可以進行調試,調試分為逐語句和逐過程,逐語句就是一行一行的,遇到方法就跳轉到方法內部,逐過程就是當遇到包含方法的代碼不會進入方法內部。

    命中斷點后,將鼠標移動到變量上,就會彈出變量的當前值的窗口:

    

    激活這個小窗口還可以更改變量的值。

    如果要調試查看下一行代碼,就可以按F10進行逐過程或者F11進行逐語句調試。

    或者點擊菜單欄中對應的按鈕:

   

    Continue是繼續執行代碼直到遇見下一個斷點,后邊的紅色方框是停止程序運行,最后標記的三個不同方向的箭頭則分別是逐語句,逐過程,和跳出正在執行的程序。

    

    變量監視:

    當命中斷點后,vs窗口下方會自動啟動幾個窗口:

    

    Autos可以自動顯示斷點處上下文中的變量及其值等信息。

    Locals可以顯示當前作用域中可以訪問的所有變量信息。

    Watch1可以自行添加要監視的變量,並且這個窗口可以添加多個。

   

    條件斷點:

    我們可以為斷點添加條件,這尤其適用於循環塊中,比如用for循環5次,我們可以讓其在循環值為3的時候停止,添加條件斷點的方式就是移動鼠標到斷點紅點上,點擊小齒輪,在彈出的框中設置即可:

    

    斷點操作:

    我們可以設置在斷點命中時執行向Output窗口輸出自定義數據的操作:

   

   在輸入框中輸入要輸出的語句即可,用大括號包裹要輸出的變量,下方可以選擇命中時執行操作接着執行代碼,也可以不選,不選就執行命中不繼續執行了,這個看自己的需求。在輸入框中輸入要輸出的語句即可,用大括號包裹要輸出的變量,下方可以選擇命中時執行操作接着執行代碼,也可以不選,不選就執行命中不繼續執行了,這個看自己的需求。

 

 

    個人公眾號,熱愛分享,知識無價。

   


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM