Cppcheck是一款專業(yè)的C/C++靜態(tài)代碼檢測(cè)工具,一般程序員在開發(fā)程序的時(shí)候經(jīng)常會(huì)遇到編譯器編譯不出來的問題,通過這款軟件可以檢測(cè)出一般的編譯器查不出來的BUG,不過與其它工具不同的是這款工具并不檢測(cè)語法錯(cuò)誤,擁有自動(dòng)變量檢測(cè)、clss類檢測(cè)等功能。
軟件功能:
1. 自動(dòng)變量檢查
2. 數(shù)組的邊界檢查
3. class類檢查
4. 過期的函數(shù),廢棄函數(shù)調(diào)用檢查
5. 異常內(nèi)存使用,釋放檢查
6. 內(nèi)存泄漏檢查,主要是通過內(nèi)存引用指針
7. 操作系統(tǒng)資源釋放檢查,中斷,文件描述符等
8. 異常STL 函數(shù)使用檢查
9. 代碼格式錯(cuò)誤,以及性能因素檢查
使用說明:
運(yùn)行cppcheck -h可以得到參數(shù)的提示,這里只介紹我用到的參數(shù)
cppcheck -j 3 --enable=all search/*
-j參數(shù)指定的是檢查線程的個(gè)數(shù),如果需要檢查代碼的量很大,-j參數(shù)還是很有用的
--enable指定當(dāng)前指定的檢查級(jí)別,可選的參數(shù)有all,style,information等