3.9 如何用VC++ 6.0調試程序
調試功能是編譯器非常重要的功能。它主要用于幫助我們快速地查找程序中的錯誤,或通過觀察程序中變量值、變量地址的變化,使我們對程序的功能有更加深入的理解。如果編譯器沒有調試功能,那么當程序遇到錯誤的時候只能靠我們自己查找。而當程序很大或錯誤很難查找的時候,查錯就會是一件很令人頭疼的事情。所以沒有調試功能的編譯器不是一個好的編譯器,而如果編譯器有調試功能但你不用或不會用,那么真的就太可惜了。下面就來講一下如何用VC++ 6.0調試程序。因為大家還沒有開始學編程,所以下面就不寫程序進行舉例了,其實就是幾個工具的使用。
首先當我們編好程序后,右擊工具欄的任意位置,彈出如圖3-31所示菜單。

圖3-31 工具欄右鍵菜單
選擇“Debug”,將調試工具條打開。如圖3-32所示。

圖3-32 Debug工具條
這個工具條中有很多工具,我們只要掌握最常用的就行了。這個工具條中現在很多工具都是灰色的,因為還沒有開始調試程序,等開始調試后它們就高亮了。那么怎么開始調試程序呢?可以選擇其中的兩個工具: 和
。它們的區別是,
是從程序開頭進行調試,即從主函數main下的第一行開始。而
是從鼠標所在位置開始調試。兩種調試方式都可以,
更加靈活一點。
單擊調試后,VC++ 6.0窗口下就會彈出兩個連在一起的窗口,如圖3-33所示。

圖3-33 變量窗口和Watch窗口
這兩個窗口是非常有用的,尤其是右邊的窗口。其中左邊的窗口叫變量窗口,該窗口顯示的是當前語句和前面語句中所使用的變量的值。右邊的窗口叫Watch窗口,可看到該窗口下面有Watch1、Watch2、Watch3、Watch4。Watch窗口是非常有用的。因為變量窗口中的變量名經常變,而我們通常都是希望從頭到尾觀測某個變量的變化,所以只要在Watch窗口的Name下輸入該變量名然后回車即可。Watch窗口中可以同時觀測多個變量,只要在Name下另起一行輸入你想觀測的其他變量名即可。
工具條中從左往右第二個工具 的作用是結束調試,如果調試完了就單擊這個工具項。但是VC++ 6.0有一個漏洞,就是結束調試后如果對程序進行了修改,那么重新編譯時就會出錯。原因是雖然結束調試了,但調試時生成的.exe文件還在執行,并沒有關掉。那么此時只要按Ctrl+Alt+Delete打開任務管理器,然后單擊“進程”,找到這個.exe進程將它關掉就行了。但如果單擊“結束進程”都關不掉,那就直接關閉VC++ 6.0,然后重新打開就行了。
工具條后面有三個帶箭頭的工具,它們從左到右分別是Step Into、Step Over和Step Out。其中用得最多的是中間的Step Over,它的作用是單步執行,即單擊一次只執行一行,這樣就能一步步跟蹤程序是怎么執行的,它的快捷鍵是F10。
Step Into和Step Out主要用于程序中有函數調用時。Step Into的箭頭是往里指,表示進入被調函數。當程序執行到函數調用時,如果單擊Step Into,那么就會進入該被調函數中進行調試。進去之后再按F10進行單步執行。如果想從被調函數中出來那么就單擊Step Out,它的箭頭是往外指的,表示從被調函數出來。出來后再按F10進行單步執行。如果執行到被調函數后直接按F10,那么就不會進入被調函數里面,而是直接跨過,這就是“Over”的含義。在按F10進行單步執行的過程中如果怎么按都沒有反應,那么肯定是程序中有scanf等需要你從鍵盤輸入數據的代碼行。這時輸入數據后回車再按F10就又繼續單步執行了。
工具 表示打開或關閉Watch窗口。工具
表示打開或關閉變量窗口。最后一個工具
表示打開C程序轉換成匯編語言的窗口,當程序調試結束后會自動打開這個窗口,如果你想返回原來的C程序窗口單擊這個工具項就行了。
- Android開發精要
- Hands-On Image Processing with Python
- Xcode 7 Essentials(Second Edition)
- DevOps Automation Cookbook
- Visual C
- Python數據可視化之Matplotlib與Pyecharts實戰
- Expert Data Visualization
- Python函數式編程(第2版)
- Python趣味編程與精彩實例
- Instant Apache Camel Messaging System
- R的極客理想:量化投資篇
- 零基礎學Java第2版
- INSTANT Apache Hive Essentials How-to
- Mastering Drupal 8
- WCF全面解析