如何使用Visual Studio調試C#程式

來源:互聯網
上載者:User

標籤:返回   一行代碼   1.4   blank   image   修改   基本   9.png   並且   

當代碼不能正常運行時,可以通過調試定位錯誤。常用的程式調試操作包括設定斷點、開始、中斷和停止程式的執行、逐步執行程式以及使程式運行到指定的位置。下面將對這幾種常用的程式調試操作進行詳細地介紹。

1.斷點操作

斷點通知調試器,使應用程式在某點上(暫停執行)或某情況發生時中斷。發生中斷時,稱程式和調試器處於中斷模式。進入中斷模式並不會終止或結束程式的執行,所有元素(如函數、變數和對象)都保留在記憶體中。執行可以在任何時候繼續。

插入斷點有3種方式:在要設定斷點的程式碼旁邊的灰色空白中單擊;按右鍵要設定斷點的程式碼,在彈出的捷徑功能表中選擇“斷點”→“插入斷點”命令,11.4所示;單擊要設定斷點的程式碼,選擇菜單中的“調試”→“切換斷點(G)”命令,11.5所示。

  

圖11.5功能表列插入斷點

插入斷點後,就會在設定斷點的行旁邊的灰色空白處出現一個紅色圓點,並且該行代碼也呈高亮顯示,11.6所示。

 

圖11.6插入斷點後

刪除斷點主要有3種方式,分別如下:

(1)可以單擊設定了斷點的程式碼左側的紅色圓點。

(2)在設定了斷點的程式碼左側的紅色圓點上單擊滑鼠右鍵,在彈出的捷徑功能表中選擇“刪除斷點”命令,11.7所示。

 

圖11.7右鍵捷徑功能表刪除斷點

(3)在設定了斷點的程式碼上單擊滑鼠右鍵,在彈出的捷徑功能表中選擇“斷點”/“刪除斷點”命令。

2.開始執行

開始執行是最基本的調試功能之一,從“調試”菜單(11.8所示)中選擇“開始調試”菜單,或在原始碼視窗中按右鍵可執行代碼中的某行,從彈出的捷徑功能表中選擇“運行到游標處”菜單,11.9所示。

 

圖11.8選擇“啟動調試”菜單

 

圖11.9選擇“運行到游標處”菜單

除了使用上述的方法開始執行外,還可以直接單擊工具列中的 按鈕,啟動調試,11.10所示。

 

圖11.10工具列中的啟動調試按鈕

如果選擇“啟動調試”菜單,則應用程式啟動並一直運行到斷點,此時斷點處的代碼以黃色底色顯示,11.11所示。可以在任何時刻中斷執行,以查看值(將滑鼠移動到相應的變數或者對象上,即可查看其具體值,11.12所示)、修改變數或觀察程式狀態。

 

圖11.11運行到斷點

 

圖11.12查看變數的值

如果選擇“運行到游標處”命令,則應用程式啟動並一直運行到斷點或游標位置,具體要看是斷點在前還是游標在前,可以在原始碼視窗中設定游標位置。如果游標在斷點的前面,則代碼首先運行到游標處,11.13所示。

 

圖11.13運行到游標處

3.中斷執行

當執行到達一個斷點或發生異常時,調試器將中斷程式的執行。選擇“調試”→“全部中斷”菜單後,調試器將停止所有在調試器下啟動並執行程式的執行。程式並沒有退出,可以隨時恢複執行,此時應用程式處於中斷模式。“調試”菜單中“全部中斷”菜單11.14所示。

 

圖11.14“調試”→“全部中斷”菜單

除了通過選擇“調試”→“全部中斷”命令中斷執行外,也可以單擊工具列中的 按鈕中斷執行,11.15所示。

 

圖11.15工具列中的中斷執行按鈕

4.停止執行

停止執行意味著終止正在調試的進程並結束偵錯工作階段,可以通過選擇菜單中的“調試”→“停止調試”命令來結束運行和調試。也可以選擇工具列中的 按鈕停止執行。

5.逐步執行和逐過程執行

通過逐步執行,調試器每次只執行一行代碼,逐步執行主要是通過逐語句、逐過程和跳出這3種命令實現的。“逐語句”和“逐過程”的主要區別是當某一行包含函數調用時,“逐語句”僅執行調用本身,然後在函數內的第一個程式碼處停止。而“逐過程”執行整個函數,之後在函數外的第一行代碼處停止。如果位於函數調用的內部並想返回到調用函數時,應使用“跳出”,“跳出”將一直執行代碼,直到函數返回,然後在調用函數中的返回點處中斷。

當啟動調試後,可以單擊工具列中的 按鈕執行“逐語句”操作,單擊 按鈕執行“逐過程”操作,單擊 按鈕執行“跳出”操作,11.16所示。

 

圖11.16逐步執行的3種命令

說明:除了在工具列中單擊這3個按鈕外,還可以通過快速鍵執行這3種操作,啟動調試後,按下<F11>鍵執行“逐語句”操作、<F10>鍵執行“逐過程”操作、<Shift+F10>鍵執行“跳出”操作。

 

本文來自明日科技出版的《零基礎學C#,轉載請註明出處!!!

如何使用Visual Studio調試C#程式

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.