日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > > 嵌入式案例Show
[導讀]大家平時調試程序的時候會遇到一些異?,F象,花了大量的時間Debug發(fā)現是訪問越界,變量未初始化等寫代碼時大意造成的。

01 前言

大家平時調試程序的時候會遇到一些異?,F象,花了大量的時間Debug發(fā)現是訪問越界,變量未初始化等寫代碼時大意造成的。如果我們嚴格遵循代碼規(guī)范,能盡可能的避免這類情況發(fā)生,實際情況往往是雖然大家都知道優(yōu)秀的代碼規(guī)范是怎樣的,但在具體寫代碼的過程中,卻執(zhí)行的差強人意,很多情況是認識上不夠重視,造成后續(xù)調試的麻煩,今天就來介紹專用的代碼檢查工具PC-LINT和PC-LINT在KEIL5中的使用。盡可能的減少此類問題。

02 PC-LINT介紹

C語言的語法擁有其它語言所沒有的靈活性,這種靈活性帶來了代碼效率的提升,但相應也使得代碼編寫具有很大的隨意性,另外C編譯器不進行 強制類型檢查,也不做任何邊界檢查,這就增加了代碼中存在隱患的可能性。如果能夠在代碼提交測試之前發(fā)現這些潛在的錯誤,就能夠極大地減輕測試人員的壓力,減少軟件項目的除錯成本,可是傳統(tǒng)的C編譯器對此已經無能為力,這個任務只能由專用的代碼檢查工具完成。PC-Lint偏重 于代碼的邏輯分析一種代碼檢查工具,它能夠發(fā)現代碼中潛在的錯誤,比如數組訪問越界、內存泄漏、使用未初始化變量等。

PC-Lint是GIMPEL SOFTWARE公司開發(fā)的C/C++軟件代碼靜態(tài)分析工具,它的全稱是PC-Lint/FlexeLint for C/C++,PC-Lint能夠在Windows、MS-DOS和OS/2平臺上使用,以二進制可執(zhí)行文件的形式發(fā)布,而FlexeLint 運行于其它平臺,以源代碼的形式發(fā)布。PC-lint在全球擁有廣泛的客戶群,許多大型的軟件開發(fā)組織都把PC-Lint檢查作為代碼走查的第一道工序。PC-Lint不僅能夠對程序進行全局分析,識別沒有被適當檢驗的數組下標,報告未被初始化的變量,警告使用空指針以及冗余的代碼,還能夠有效地幫你提出 許多程序在空間利用、運行效率上的改進點。

PC-lint的代碼檢查功能

PC-Lint能夠檢查出很多語法錯誤和語法上正確的邏輯錯誤,PC-Lint為大部分錯誤消息都分配了一個錯誤號,編號小于1000的錯誤號是分配給C 語言的,編號大于1000的錯誤號則用來說明C++的錯誤消息。下表列出了PC-Lint告警消息的詳細分類。

以C語言為例,其中的編號1-199指的是一般編譯器也會產生的語法錯誤;編號200-299是PC-Lint程序 內部的錯誤,這類錯誤不會出現在代碼中的;編號300-399指的是由于內存限制等導致的系統(tǒng)致命錯誤。編號400-999中出現的提示信息,是根據隱藏 代碼問題的可能性進行分類的:其中編號400-699指的是被檢查代碼中很可能存在問題而產生的告警信息;編號700-899中出現的信息,產生錯誤的可 能性相比告警信息來說級別要低,但仍然可能是因為代碼問題導致的問題。編號900-999是可選信息,他們不會被默認檢查,除非你在選項中指定檢查他們。

03 Keil中如何配置pc-lint

下載安裝pc-lint,網上有很多資源。正常安裝即可。

配置PC-lint

keil MDK中已經給出了pc-lint的配置文件,打開keil工程,tools--setupPC-lints。如下圖彈窗,按照如下配置

  1. 先選擇pc-lint執(zhí)行文件。

  2. 選擇keil安裝下的配置文件ARM/BIN/CO-RV.LINT。

  3. 選擇頭文件和庫文件的包含路徑否則編譯找不依賴,可以拷貝工程中的編譯選項配置。點擊OK退出。

配置完成打開tools可以看到如下圖選項,第一個檢查當前打開的源文件,第二個編譯所有的源文件。

編譯后輸出信息在output窗口中,如下圖。

04 END

借用網上一句話總結:能通過pc-lint檢驗的程序不一定沒有問題,但通過了pc-lint檢驗的程序,質量的提高也是不言而喻的。


免責聲明:本文內容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯系我們,謝謝!


本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。

關鍵字: 工業(yè)電機 驅動電源

LED 驅動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅動電源 照明系統(tǒng) 散熱

根據LED驅動電源的公式,電感內電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅動電源

在現代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅動電源 功率因數校正

在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現在的LED驅動電源

關鍵字: LED 驅動電源 開關電源

LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅動電源
關閉