工業資訊 2023-02-27 20:22:03 評論:0    瀏覽:27    

一、調試是編程或者學習編程的核心技術

剛入門或者對編程不夠精通的同志,在編程的過程中經常遇到各種問題,要么對提示的錯誤感到束手無策,要么就是不得要領,甚至編程很多年的同志都沒有找到學習語言的要領!經常在群或者微信詢問我學習編程的技巧或者解決問題之道,我給出的答案是調試是學習編程最重要的技巧、最重要的核心技術,調試和架構能力是區分程序員水平的重要標志。

不論對新手、老手甚至高手,就不存在沒有問題的程序,可以說開發工程師就是為了解決各種問題而存在的,沒有問題,開發工程師也就沒有存在的必要了!因此有各種問題是正常的,沒有問題才是最大的問題!

學習程序,解決遇到的問題,調試都是最有效的方法和手段!

比如,想了解程序的流程,執行調試,對程序的運行過程就能了如指掌,當然就能輕而易舉掌握諸如IF ELSE等語法的功能。

通過變量的觀察功能,我們就知道數據運算是否按照既定的方式完成的,問題出在哪里,其它諸多功能就不一一贅述,請大家自己通過不斷的學習和實踐來體會!

二、調試要解決的問題

1、程序的加工過程

(1)編寫設計要求

(2)編寫流程圖

(3)完成局部功能代碼

(4)多函數或者多文件聯合調試

(5)編譯鏈接生成可執行程序

(6)程序測試

2、調試要解決的問題

(1)編譯過程中的錯誤(語法錯誤)

(2)鏈接過程中的錯誤(語法錯我)

(3)程序測試(功能性錯誤)

前兩種統稱為語法錯誤,無法生成可執行程序,出現在局部函數完成的過程和多函數多文件聯合調試過程,需要掌握編譯、鏈接的原理和基本的語法排錯技巧。

第3種通常稱為BUG,能夠通過編譯和鏈接,生成能夠正常執行的程序,但是存在一些不符合設計要求的功能,比如沒有實現某些功能,程序崩潰、非正常退出、輸出的數據錯誤等。

3、特殊調試

上述一般說的都是有源代碼的調試,在現實應用中,還有很多調試,沒有源代碼,但是需要對程序進行調試、分析、逆向工程、破解等。通常把可執行程序進行反匯編,進行靜態或者動態的調試,這種調試需要精通匯編語言、系統函數和操作系統的原理。

通常程序的發行需要對程序進行加密,這是商業程序必不可少的步驟和過程!軟件教學過程確很少提到這個問題。

三、程序的編譯原理及編譯器的構成

通常我們都需要一套工具進行程序設計,我們就以常用的VC來說吧,他是一系列的的工具合集。

1、編程軟件的組成

(1) 文本編輯器

用來編寫源代碼

(2)C程序編譯器: cl.exe

如果安裝了VC2010,我的是默認的安裝路徑,會在如下路徑

C:Program Files (x86)Microsoft Visual Studio 10.0VCbin

中找到cl.exe可執行文件,他是C程序編譯器, 用來把源代碼生成*.OBJ文件,也就是點擊“生成”下的子菜單“編譯”按鈕時,會調用cl.ece生成*.obj文件。

cl.exe的參數問題,在調用cl.exe時使用不同的參數可以完成不同的任務,由于本文重點所限,就不一一列覺它的參數和作用,請讀者參考其它資料。在VC中他是通過IDE中不同的菜單或者選項來控制編譯參數的。

(3)連接器:link.exe

link.exe 把若干的*.obj文件組裝成可執行文件,一般還隱含了程序格式轉換程序,即把生成的程序轉換成特定的格式。

與cl.exe相同,link.exe一樣有參數,在VC中他是通過IDE中不同的菜單或者選項來控制鏈接參數的。

(4)庫管理

一般分為靜態庫和動態庫,我們學習C語言的時候基本上都是靜態庫,在編譯的時候就要加入相關庫代碼,最后鏈接生成可執行文件。庫管理可以把一些功能代碼做成庫的形式,VC中靜態庫有2部分組成,一個是頭文件,另一個是具體的代碼庫,比如match.h和對應的庫文件*.lib,通過包含頭文件來使用庫。

(5)IDE

為了簡化操作和管理功能,一般都會提供一個集成的IDE來管理各個功能。

四、使用VC2010建立一個C程序

安裝好VC2010后,就可以用來學習C語言了。

1、新建一個項目

單開菜單:文件-新建-項目

圖1:新建項目

2、新建win32控制臺程序

在圖1中點擊“win32控制臺程序”,名稱位置輸入LX,

圖2:選擇win32控制臺程序

3、建立一個空的win2控制臺程序

圖3:建立一個空的win32控制臺程序

4、添加C源文件

圖4:添加C源文件

沒有C源文件的,可以新建一個c 文件,文件名改成*.c既可。

右鍵點擊“源文件”文件夾,在彈出的菜單中選擇“添加”,在添加的下級菜單中選擇“現有項目”

圖5:打開添加文件對話框

點擊“1.c”文件,點擊“添加”

圖6:添加C語言文件

4、編譯C語言文件生成可執行文件

點擊菜單“生成”下的“生成解決方案”

圖7:程序成功編譯

5、運行程序

點擊菜單“調試”下的“開始運行(不調試)”

圖8:程序運行結果

程序輸出了要顯示的內容,說明程序成功的運行了。

至此,VC的編譯原理和結構,以及使用VC編譯C程序就完成了。下期我們開始講述調試功能的使用。

五:“LNK1123:轉換到 COFF期間失敗:文件無效或損壞”的解決辦法

由于連接器LNK是通過調用cvtres.exe完成文件向coff格式的轉換的,所以出現這種錯誤的原因就是cvtres.exe出現了問題。搜索本機C盤cvtres.exe文件,

使用C:Windowswinsxs文件夾中的較新版“cvtres.exe”替換掉..Microsoft Visual Studio 10.0VCbin中的同名文件即可。

本文屬于原創首發:不經授權請勿用于商業用途。

以上內容為【vc2010調試技巧丨vc2010程序開發主要步驟】的相關內容,更多相關內容關注中國智能工業網。

 
免責聲明:

本文內容來自用戶上傳并發布或網絡新聞客戶端自媒體,本站點僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容,請聯系刪除。

 
0相關評論
打賞