• <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.¢%

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

            pc-lint 資料

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

            (1)什么是pc-lint?

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

            http://www.gimpel.com

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

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

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

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

            2) pc-lint不但可以檢測(cè)單個(gè)文件,也可以從整個(gè)項(xiàng)目的角度來(lái)檢測(cè)問(wèn)題,因?yàn)镃語(yǔ)言編譯器固有的單個(gè)編譯,這些問(wèn)題在編譯器環(huán)境下很難被檢測(cè),而pc-lint在檢查當(dāng)前文件的同時(shí)還會(huì)檢查所有與之相關(guān)的文件,可想而知,它會(huì)對(duì)我們有很大的幫助。

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

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


            (3)如何使用pc-lint?


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

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

            此時(shí)可以從命令行進(jìn)入這里面看看下載到的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
            我這里是打過(guò)補(bǔ)丁的也就是8.00的x的版本(是8.00版里面的最后一個(gè)版本,hoho),一般網(wǎng)上“free”的,大都是8.00e的版本。


            可以到如下地址來(lái)下載patch補(bǔ)丁,不過(guò)現(xiàn)在的patches似乎都升級(jí)到9.00a以后的了,但愿9.00a的“free”版能早點(diǎn)出來(lái)

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

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

            (4)配置pc-lint

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


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

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

            lin [回車]

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

            (5)把pc-lint跟vs2005集成

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

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

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

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

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

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

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

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

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

            Feedback

            # re: pc-lint 資料  回復(fù)  更多評(píng)論   

            2009-04-10 12:23 by wisher
            你好朋友,我這里需要pclint,能麻煩你發(fā)一份到我郵箱里嗎?謝謝你
            361087546@qq.com
            久久亚洲AV成人无码电影| 国产成人精品综合久久久| 久久成人国产精品免费软件| 欧美日韩精品久久免费| 无码人妻精品一区二区三区久久久 | 久久综合成人网| 欧美一区二区三区久久综| 亚洲国产精品婷婷久久| 亚洲国产精品无码久久久久久曰| 久久久久成人精品无码中文字幕| 久久99精品九九九久久婷婷| 亚洲精品国产美女久久久| 国产亚州精品女人久久久久久 | 国产成人精品久久二区二区| 久久久无码精品午夜| 久久99精品国产| 18岁日韩内射颜射午夜久久成人| 青青青伊人色综合久久| 亚洲女久久久噜噜噜熟女| 久久无码人妻精品一区二区三区 | 国产精品免费看久久久| 色偷偷91久久综合噜噜噜噜| 精品久久久久久| 色欲综合久久躁天天躁蜜桃| 色综合合久久天天给综看| 国产精品va久久久久久久| 久久久国产精品网站| 久久99精品久久久久婷婷| 国产精品久久久久a影院| 久久夜色撩人精品国产小说| 亚洲国产精品久久久久婷婷老年 | 久久精品国产欧美日韩| 久久久久中文字幕| 久久青青草原亚洲av无码app| 久久久久av无码免费网| 久久久黄色大片| 2020久久精品亚洲热综合一本| 久久影视综合亚洲| 国产精品成人久久久| 精品一二三区久久aaa片| 思思久久精品在热线热|