999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

VB程序的調試技術及應用實例研究

2016-02-06 00:49:14陳曉紅沈東華
無線互聯科技 2016年24期
關鍵詞:調試程序

陳曉紅,沈東華

(1.南通大學 計算機科學與技術學院,江蘇 南通 226019;2.南通市公安局 港閘分局,江蘇 南通 226000)

VB程序的調試技術及應用實例研究

陳曉紅1,沈東華2

(1.南通大學 計算機科學與技術學院,江蘇 南通 226019;2.南通市公安局 港閘分局,江蘇 南通 226000)

在編寫程序的過程中,出現錯誤在所難免。文章介紹了如何根據VB的錯誤類型,準確地發現并排除錯誤。最后,結合調試工具,文章分析了如何更好地對應用實例進行調試。

錯誤類型;調試工具;調試窗口

“高級語言程序設計VB”是非計算機類理工科本科生的基礎必修課。學生一般需要在一個學期內掌握VB的基本理論知識,學會編寫簡單的程序,并需要通過全國或省級計算機等級考試(二級VB)。

學好這門課的關鍵在于多上機實踐,多編寫程序。在編程過程中,代碼中存在錯誤是在所難免的。這些錯誤可能會阻礙程序的正常運行,有些可能不影響程序的運行卻得不到正確的結果。有些學生上機遇到錯誤,就一籌莫展了,對VB的學習也失去了信心,主要原因在于沒有學會VB調試技術。遵循VB的調試技術,可以跟蹤到程序內部,觀察程序的運行過程,觀察變量和屬性是如何隨著語句的執行而改變,從而發現并排除程序中的錯誤。

1 VB 錯誤類型

編程時遇到的錯誤五花八門,為了更有效地運用調試手段排除錯誤,文章把遇到的錯誤分為以下3類。

1.1 編譯錯誤

編譯錯誤是由于違背了VB的語法規則,錯誤地書寫語句而造成的。例如,拼錯了某個關鍵字,表達式書寫不完整,英文標點符號錯用為中文標點符號,If語句沒有end if語句與之相對應等。

在編譯程序時,VB系統能夠進行“自動語法檢測”,逐一發現程序中的語法錯誤,并彈出對話框,給出“編譯錯誤”的提示,以方便對出錯行進行修改。

1.2 運行錯誤

運行錯誤是指在程序運行過程中,執行非法語句而引發的錯誤。例如,數組下標越界、數據溢出、類型不匹配、無效屬性值、除數為零等。

這類錯誤在編寫形式上符合語法規則,所以不會在編譯時被發現。在程序運行時,系統一旦檢測到運行錯誤,就會顯示出相應的錯誤信息,等待編程人員修改。

1.3 邏輯錯誤

如果程序在編譯和運行時均未發現錯誤,卻沒有得到預期的運行結果,那么,程序發生了邏輯錯誤。對于這類錯誤,VB系統通常無法自動檢測,也不會給出錯誤提示,需要借助調試工具,分析程序的運行過程才能排查出來,加以改正。

2 VB調試工具

2.1 斷點設置

程序中的語句都可以設置為斷點,在一段程序中可以設置多個斷點。設置斷點的方法是:將光標移至需設置斷點的程序行,按下F9鍵。

程序運行到斷點語句處將暫停,進入中斷狀態,這時可以查看程序運行到此處的運行狀態,查看變量和屬性的值,和預期的目標值相比較,可以判斷這一部分程序的執行是否符合用戶的意圖。

2.2 單步調試

單步調試就是以“逐語句”的方式執行程序。單步調試的方法:在程序的設計態或運行態按下F8鍵。

每執行一次單步調試,程序的執行就向前推進一步,就中斷一次,因此,可以逐個語句地檢查每個語句的執行狀態,特別是遇到選擇或循環語句時,便于檢測這些語句中的條件判斷結果,便于發現程序中存在的邏輯錯誤。

2.3 調試窗口

調試工作的目標十分明確,就是跟蹤程序的執行過程,在中斷狀態下通過調試窗口來查看變量和屬性的值,以達到迅速發現錯誤位置的目的。VB中提供了以下幾種調試窗口。

2.3.1 本地窗口

在程序中斷時,本地窗口可以自動顯示當前過程中過程級變量的值以及當前模塊中模塊級對象、變量的值。

在本地窗口中,允許修改變量的當前值。這一技巧的使用,有時能提高調試的工作效率。例如,在if語句中,可以修改變量使之滿足判斷條件,調試then語句塊程序;然后,再修改變量使之不滿足判斷條件,調試else語句塊程序。

2.3.2 立即窗口

在程序中斷時,在立即窗口輸入變量名或表達式,并按Enter鍵,就可以查看其當前值。本地窗口中無法查看的全局變量和表達式的值,在立即窗口中也能查看。但立即窗口查看變量或表達式時,每次都需要手動輸入,比起其他兩種調試窗口,略顯不便。

2.3.3 監視窗口

在使用監視窗口前,首先要添加需要監視的表達式。在設計時,和程序中斷時,都可以進行添加。在中斷時,使用監視窗口,可以一目了然地監測到指定的表達式的值、數據類型、所屬過程或模塊。監視窗口的優點在于,可以在一個界面上顯示所有過程中需監測的表達式值;而本地窗口主要顯示的是當前過程中的變量值。

3 調試實例

本文選取了江蘇省計算機等級考試(二級VB)的一條改錯真題,來詳細介紹調試工具的使用。

題目如下:找到介于300~900之間的由3個不同數字組成的完全平方數。所謂完全平方數是指其平方根為整數的數。例如,324的各位數字不同,且平方根是18,所以324是符合要求的數。程序界面如圖1所示。

圖1 程序運行界面

拿到改錯題,首先要泛讀并分析一下,本程序中的pf ()函數過程用于判斷平方根是否為整數,vf()函數過程用于判斷是否由不同數字組成。而Command1_Click()事件過程用于輸出在指定范圍內符合要求的數。然后,進入調試改錯。需要注意的是,在調試時,可能會刪除或者覆蓋掉部分必要的代碼,所以在調試前應該先將程序備份。

首先,單擊Command1,此時程序出現運行錯誤:溢出。究竟在何處產生“溢出”呢?需要深入到程序內部監測。選擇“單步調試”,配合“監視窗口”的方法進行調試。選擇Command1_Click()中的變量i,p,pf()過程中的變量n,vf()過程中的變量n,k,a(k),a(i),a(j)進行監測。

開始單步運行前,可以使Command1_Click()中循環變量i的初值設置為符合條件的數324,來監測輸入符合的數,在哪一步出錯,致使得不到正確的輸出。就本題而言,需要發現pf()函數能正確執行,而在vf()函數中無法執行到n<0,所以,修改第一處,將n<0改為n=0。繼續單步運行,通過監測窗口,觀察變量的變化,發現Command1_Click()中的i和vf()中的n同步變化,而本題中Command1_Click()中的i變量應保留本身的值,所以修改第二處,將vf()過程中的形參n改為按值傳遞。這樣,符合條件的數324,就能得到正確輸出。

保存修改后的程序,并將循環變量i恢復為300,然后運行,發現程序能運行,但輸出卻多了一些不符合要求的值,如400等。再使用技巧,將循環變量i,改為400,監測為何能輸出。單步執行到vf()中,發現是因為當兩數相等時,未及時退出過程,導致一定會執行到vf=True.。修改第三處,將Exit For改為Exit Function。最后,保存程序并運行,發現此時程序已能正確運行,調試成功。

4 結語

要想學好VB程序調試,需要不斷探究和摸索,在調試過程中積累經驗。靈活地運用VB程序調試工具,可以快速地發現并排除程序中的錯誤。

[1]成耀,鄭國平,魯松. 如何讓學生掌握VB上機調試之我見[J]. 山東工業技術,2013(12):210.

[2]吳中寧. VB程序調試[J].電腦知識與技術,2007(11):749-751.

[3]宋翔.VB程序對的調試和常見錯誤的捕獲及錯誤處理方法[J].陜西教育(高教版),2011(7):208,214.

Research on debugging technology of VB program and its application

Chen Xiaohong1, Shen Donghua2
(1.Computer Science and Technology College of Nantong University, Nantong 226019, China; 2.Gangzha Branch of Nantong Public Security Bureau, Nantong 226000, China)

During the process of compiling programs, it is difficult to avoid errors.This article introduces how to find and eliminate errors according to the error types of VB. Finally, how to better debug the program instance combining with the debugging tools is analyzed in this paper.

error type; debugging tools; debugging window

2015年度省第四期“333工程”科研項目資助計劃;項目編號:BRA2015116。

陳曉紅(1981— ),女,江蘇南通,碩士,講師;研究方向:數據挖掘。

猜你喜歡
調試程序
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
基于航拍無人機的設計與調試
電子制作(2018年12期)2018-08-01 00:47:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
核電廠主給水系統調試
中國核電(2017年1期)2017-05-17 06:10:11
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
無線通信中頻線路窄帶臨界調試法及其應用
電子制作(2017年19期)2017-02-02 07:08:38
調壓柜的調試與試運行探討
工業電氣設備控制系統的安裝與調試
音頻處理器的調試
主站蜘蛛池模板: 在线观看免费国产| 精品视频一区二区观看| 久久国产精品娇妻素人| 久久国产亚洲偷自| 国产xx在线观看| 免费看a毛片| 午夜福利无码一区二区| 久视频免费精品6| 日韩精品专区免费无码aⅴ| 日韩在线第三页| 国产乱子伦无码精品小说| 亚洲va在线∨a天堂va欧美va| 亚洲综合激情另类专区| 欧美在线观看不卡| 日韩在线2020专区| 国产呦精品一区二区三区网站| 91精品国产情侣高潮露脸| 五月天综合婷婷| 久久亚洲天堂| 亚洲午夜18| 永久免费无码成人网站| 久久久久无码精品| 亚洲成人网在线观看| av在线无码浏览| 亚洲AV无码一区二区三区牲色| 国产欧美日韩精品综合在线| 亚洲人成网站18禁动漫无码| 不卡的在线视频免费观看| 91成人在线免费观看| 综合亚洲网| 国产91熟女高潮一区二区| 亚洲欧美国产五月天综合| 欧美一级大片在线观看| 美女无遮挡免费视频网站| 思思99热精品在线| 成人亚洲视频| 日本午夜影院| 欧美亚洲一区二区三区在线| 无码中字出轨中文人妻中文中| 婷婷六月激情综合一区| 欧美日韩国产在线播放| 欧美亚洲欧美区| 国产精品人成在线播放| 97视频精品全国在线观看| 26uuu国产精品视频| 亚洲精品不卡午夜精品| 国产麻豆精品久久一二三| 欧美中文字幕第一页线路一| 日韩欧美国产中文| 亚洲黄色激情网站| 二级特黄绝大片免费视频大片| 丁香婷婷激情网| 亚洲成人黄色网址| 专干老肥熟女视频网站| 99久久99这里只有免费的精品| 免费观看欧美性一级| 精品福利网| 亚洲精品桃花岛av在线| 91精品国产情侣高潮露脸| 亚洲综合色在线| 精品视频一区在线观看| 久久婷婷五月综合色一区二区| 亚洲国产系列| 亚洲乱强伦| 国产在线91在线电影| 啊嗯不日本网站| 伊人蕉久影院| 免费在线播放毛片| 91亚洲视频下载| 亚洲色欲色欲www在线观看| 国产99在线观看| 成年A级毛片| 综合色在线| 亚洲欧美极品| 国产高清免费午夜在线视频| 四虎亚洲国产成人久久精品| 国产内射一区亚洲| 国产凹凸一区在线观看视频| 国产在线欧美| 97视频在线观看免费视频| 九九久久99精品| 99热这里都是国产精品|