PCLint使用(二)

來源:互聯網
上載者:User

PCLint(一)中的遺留問題已經解決。

 

問題一、Lint多個C檔案

方法一:

(1)   在LINT軟體目錄下建立PRJLINT.LNT檔案,檔案的第一行是使用的LINT設定檔名,從第二行開始,列出想所有要LINT的*.C檔案名稱,一行一個。如果要把結果輸出到檔案,在前面加上一行 "-os(檔案名稱) "(例如: "-os(c:/lint/result.txt) ")。範例:

YF_Config.lnt

// 以下為自己想要進行Lint的.C檔案,
G:/src/tt/tt1.c
G:/src/tt/tt2.c
         …
(2)  在Source Insight中增加一條"PC-LINT PROJECT”命令,所有設定與"PC-LINT"設定相同,除了在"Custom Commands"對話方塊中 "RUN "編輯框的文字由"C:/LINT/LINT-NT.EXE filename.lnt %f"改為"C:/LINT/LINT-NT.EXE PRJLINT.LINT ",也就是把設定檔名改為PRJLINT.LNT,並去掉未尾的"%f "

方法二:

(1)開啟SourceInsight, 選擇Options-->Custom Commands-->Add, 輸入pclint_prj
(2)在Run中填寫: D:/UnxUtils/usr/local/wbin/find.exe %d -name *.c -o -name *.cpp | D:/UnxUtils/usr/local/wbin/xargs D:/PC-Lint/lint-nt -i"D:/UnxUtils/usr/local" -u D:/PC-Lint/std.lnt D:/PC-Lint/env-vc6.lnt

問題二:PCLint檢查庫標頭檔

方法:

在std.lnt中加入

-wlib(0)

這個參數是取消對編譯器庫檔案的審查,這個是相當重要的一個參數。如果
你只是想審查自己的代碼的話,請加上這個參數。不然,就會對編譯器的庫函數也
進行審查。

 

發現:在解決上述問題後,檢查應用程式,發現PCLint8.0中的MIRSA-C標準是1998的,一共127條。MIRSA-C標準是非常嚴格的,所以檢查出的問題很多,需要邊看標準邊修改。

 

參考資料:

《PC-Lint與C/C++代碼品質》http://dev.csdn.net/author/DL88250/ad095b3f77994a9ab2cfe3c695e3e004.html

《PC-Lint的使用方法(一)》http://blog.csdn.net/scucj/archive/2009/08/05/4409735.aspx 其中比較重要的是:2.2 PC-lint的介紹。

《linux pc-lint 》http://blog.csdn.net/robbie1314/archive/2010/06/21/5684927.aspx

《MISRA_C_1998》http://download.csdn.net/down/2072813/wkeliang

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.