轉帖|使用教程|編輯:況魚杰|2020-10-28 13:56:41.930|閱讀 479 次
概述:本文介紹了PC-lint Plus的使用方法:集成到IDE-如何集成到CB中。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
PC-lint Plus是一種靜態分析工具,通過分析C和C ++源代碼來發現軟件中的缺陷。與編譯器一樣,PC-lint Plus會解析源代碼文件,執行語義分析,并構建一個抽象語法樹來表示程序。PC-lint Plus采用各種機制,包括數據流分析,數值跟蹤,讀寫分析,強類型檢查,功能語義驗證和許多其他技術,來提供對單個文件和整個項目強大而全面的分析。
本文介紹了PC-lint Plus的使用方法:集成到IDE-如何集成到CB中。
從PC-Lint8.0j版本開始,支持從C++Builde?6的工程文件.bpr導出工程的Lint配置。自動導出C++?Builder6的工程設置lnt文件的方法參見C:\Lint8\read80.txt中的說明,下面是集成到的CBuilder6中的tools設置說明:
從C++?Builder的Tools菜單中選擇“Configure?Tools”命令項,在打開的Tool?Options對話框中點擊Add按鈕。按圖填入各項參數。由于CBuilder6對命令行參數傳遞重定向命令的處理有問題,所以還需要編寫一個LINTEXP.BAT完成此功能。圖中各參數的內容參見后面的LINTEXP.BAT批處理文件內容的注釋。
LINTEXP.BAT的內容如下:
@echo?off?rem?Title:?&Export?Project.Lnt?file rem?Program:?E:\Borland\CBuilder6\Bin\LINTEXP.BAT? rem?Parameters:?$NAMEONLY($EXENAME).bpr?$NAMEONLY($EXENAME).lnt?@echo?on? C:\Lint8\LINT-NT.EXE?+fpa?-d"BCB=e:\\borland\\cbuilder6"?%1>%2
其中E:\Borland\CBuilder6為C++Builder6的安裝目錄,需根據實際情況修改。$NAMEONLY()是CBuilder6提供的一個宏函數,將文件名的后綴去掉,$EXENAME代表了工程最后生成的文件名,這里要求它和工程的.bpr去掉后綴的文件名同名。
檢查當前工程中當前窗口中的源文件:
Title:?Lint?For?Current?File? Program:?C:\Lint8\LINT-NT.EXE? Parameters:?$SAVE?-u?-v?-iC:\Lint8?std?env-cb?$NAMEONLY($EXENAME).lnt?$EDNAME
和VC6的集成方法一樣,由于參數中需要工程的lnt文件,執行此命令前提是源文件所在目錄下已經有工程的$NAMEONLY($EXENAME).lnt文件,這個文件在步驟3中生成。?其中$EDNAME表示當前編輯的源文件名。
檢查當前工程中的所有源文件。
Title:?&Lint?For?Current?Project? Program:?C:\Lint8\LINT-NT.EXE? Parameters:?$SAVEALL?-v?-i"C:\Lint8"?std?env-cb?$NAMEONLY($EXENAME).lnt
執行此命令前提是源文件所在目錄下已經有工程的$NAMEONLY($EXENAME).lnt文件,這個文件在步驟3中生成。
設置Build?Tool在Project?Manager中檢查指定的單個源文件:從C++?Builder的Tools菜單中選擇“Build?Tools”命令項,在打開的Build?Tools對話框中點擊Add按鈕。按圖填入各項參數。
Title:?Lint? Other?Extensions:?.cpp;.c;.cxx? Command?Line:?C:\Lint8\LINT-NT.EXE?-u?-i"C:\Lint8"?std.lnt?env-cb.lnt?-i$INCLUDEPATH?-D$DEFINE?$NAME?$SAVE
其中$INCLUDEPATH為工程設置中的include路徑,$DEFINE為工程設置的預編譯宏。添加后,如?圖在Project?Manager中的源文件上點擊鼠標右鍵,選擇Lint就開始檢查選中的文件了,輸出信息在Build窗口。
本文內容就是這樣了,希望對您有所幫助!您可以繼續關注我們慧都網,了解更多產品資訊~也可以下載PC-lint Plus試用版免費評估~
相關內容推薦:
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn