• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉(zhuǎn),開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            pc-lint 資料

            Posted on 2008-12-20 16:28 S.l.e!ep.¢% 閱讀(1096) 評論(1)  編輯 收藏 引用 所屬分類: test
            使用pc-lint助力symbian開發(fā)
            使用pc-lint一段時間了,感覺確實對代碼質(zhì)量提升有很大幫助。再此,寫一篇文章講講它在symbian開發(fā)中的使用方法。

            (1)什么是pc-lint?

            pc-lint是一個歷史悠久,功能異常強勁的靜態(tài)代碼檢測工具。它的使用歷史可以追溯到計算機編程的遠古時代(30多年以前)。經(jīng)過這么多年的發(fā)展,它不但能夠監(jiān)測出許多語法邏輯上的隱患,而且也能夠有效地幫你提出許多程序在空間利用、運行效率上的改進點,在很多專業(yè)級的軟件公司,比如microsoft, pc-lint檢查無錯誤無警告是代碼首先要過的第一關(guān),偶個人覺得,對于小公司和個人開發(fā)而言,pc-lint也非常重要,因為基于開發(fā)成本考慮,小公司和個人往往不能拿出很多很全面的測試,這時候,pc-lint的強勁功能可以很好地提高軟件的質(zhì)量。
            pc-lint目前是支持c和c++程序的語法檢查的,但很遺憾是一款商業(yè)軟件(官方網(wǎng)站):

            http://www.gimpel.com

            盡管如此,google一下,會發(fā)現(xiàn)在可用的“free”版本很多。。。

            在linux環(huán)境下有一個叫做splint的與pc-lint相似的代碼靜態(tài)分析工具也很好用,但是很可惜它只能支持c語言的分析。參考網(wǎng)址:

            (2)pc-lint都有哪些功能?

            1) pc-lint是一種靜態(tài)代碼檢測工具,可以說,pc-lint是一種更加嚴格的編譯器,不僅可以象普通編譯器那樣檢查出一般的語法錯誤,還可以檢查出那些雖然完全合乎語法要求,但很可能是潛在的、不易發(fā)現(xiàn)的錯誤。

            2) pc-lint不但可以檢測單個文件,也可以從整個項目的角度來檢測問題,因為C語言編譯器固有的單個編譯,這些問題在編譯器環(huán)境下很難被檢測,而pc-lint在檢查當前文件的同時還會檢查所有與之相關(guān)的文件,可想而知,它會對我們有很大的幫助。

            3) pc-lint支持幾乎所有流行的編輯環(huán)境和編譯器,比如Borland C++從1.x到5.x各個版本、Borland C++ Build、GCC、VC,VC.net、watcom C/C++、Source insight、intel C/C++等等,也支持16/32/64的平臺環(huán)境。

            4) 支持Scott Meyes的名著(Effective C++/More Effective C++)中說描述的各種提高效率和防止錯誤的方法。


            (3)如何使用pc-lint?


            pc-lint下載完畢后(一般“free”的版本都是“綠色”安裝版,直接解壓出來一個目錄即可),我這里舉例子就是解壓以后出來的目錄是d:\lint。

            進入這個lint的目錄,會發(fā)現(xiàn)有幾個主要的文件,lint.exe, lint-nt.exe等等。

            此時可以從命令行進入這里面看看下載到的pc-lint是什么版本的:

            C:\Documents and Settings\wayne>D:\Lint\lint-nt -v -i"D:\Lint" std.lnt

            PC-lint for C/C++ (NT) Vers. 8.00x, Copyright Gimpel Software 1985-2008
            我這里是打過補丁的也就是8.00的x的版本(是8.00版里面的最后一個版本,hoho),一般網(wǎng)上“free”的,大都是8.00e的版本。


            可以到如下地址來下載patch補丁,不過現(xiàn)在的patches似乎都升級到9.00a以后的了,但愿9.00a的“free”版能早點出來

            http://www.gimpel.com/html/ptch90.htm#pcl

            好了,如果運行l(wèi)int-nt以后,可以看到有版本號輸出,以及什么can not open files之類的提示,那么恭喜,你的pc-lint已經(jīng)可以工作了。

            (4)配置pc-lint

            看看有沒有一個叫做lin.bat的批處理文件,如果沒有,就手工添加一個,如下內(nèi)容:


            d:\lint\lint-nt -v -i"d:\lint" std.lnt %1 %2 %3 %4 %5 %6 %7 %8 %9

            好了,然后把d:\lint這個路徑添加到系統(tǒng)的path里面去,然后“運行”->“cmd”打開shell,然后輸入:

            lin [回車]

            看看有沒有輸出,ok,如果有,那么代表你的for symbian的pc-lint環(huán)境就弄好了。

            (5)把pc-lint跟vs2005集成

            集成過程很簡單,其實只要是支持調(diào)用第三方的程序的ide,更準確地說是editor都可以無縫地將pc-lint集成到環(huán)境中去,例如:vs系列ide,carbide c++,ultra editor, edit plus, source insight等等,hoho,偶甚至把emacs for win32也配置出來了

            1)打開vs2005,選擇"tools"->"externel tools...",然后選擇"add"

            2)在title里隨便輸點什么,例如“l(fā)int current file”

            3)在command里面輸入:d:\lint\lin.bat

            4)在argument里面輸入:-i"$(SolutionDir)\inc" "$(ItemPath)"

            這里的-i就代表pc-lint進行語法檢查的時候當遇到頭文件的時候要跑到哪個目錄下面去找的意思,你也可以這樣寫:"$(SolutionDir)\group\conf.lnt"然后在你的group目錄里面建立一個叫做conf.lnt的文件,把所有程序用到的include目錄都用-i的形式放進去。

            5)在intial directory里面輸入:"$(ItemPath)"

            6)最后,很重要的一點就是,需要把use output window這一項前面的小方塊勾上。

            然后按下確定,就一切ok了。

            Feedback

            # re: pc-lint 資料  回復  更多評論   

            2009-04-10 12:23 by wisher
            你好朋友,我這里需要pclint,能麻煩你發(fā)一份到我郵箱里嗎?謝謝你
            361087546@qq.com
            精品一二三区久久aaa片| 国产亚洲婷婷香蕉久久精品| 热99RE久久精品这里都是精品免费 | 亚洲午夜精品久久久久久人妖| 999久久久免费国产精品播放| 99热热久久这里只有精品68| 免费久久人人爽人人爽av| 久久精品国产亚洲AV香蕉| 无码人妻精品一区二区三区久久 | 久久香综合精品久久伊人| 嫩草伊人久久精品少妇AV| 国产精品VIDEOSSEX久久发布| 一本久久免费视频| 国产高潮国产高潮久久久| 亚洲精品无码久久毛片| 久久99精品国产麻豆| 中文字幕久久亚洲一区| 成人精品一区二区久久久| 国产精品无码久久久久久| 久久天天躁狠狠躁夜夜躁2014| 久久99精品国产| 久久人爽人人爽人人片AV | 久久人妻少妇嫩草AV蜜桃| 国产AⅤ精品一区二区三区久久| 热久久视久久精品18| 久久亚洲高清综合| 99久久久久| 热久久这里只有精品| 日本福利片国产午夜久久| 亚洲国产一成人久久精品| 久久亚洲天堂| 久久精品亚洲精品国产欧美| 久久久久久A亚洲欧洲AV冫| 国产精品免费看久久久| 午夜人妻久久久久久久久| 久久久无码精品亚洲日韩京东传媒| 国产叼嘿久久精品久久| 久久青草国产精品一区| 青青草原1769久久免费播放| 亚洲午夜久久久精品影院| 久久精品国产一区二区电影|