实例介绍
Cppcheck是一种C/C++代码缺陷静态检查工具。不同于C/C++编译器及其它分析工具,Cppcheck只检查编译器检查不出来的bug,不检查语法错误。她是开源的.
【实例截图】
【核心代码】
cppcheckSourceCode
└── cppcheckSourceCode
├── AUTHORS
├── build.bat
├── build-pcre.txt
├── Changelog
├── cli
│ ├── cli.pro
│ ├── cmdlineparser.cpp
│ ├── cmdlineparser.h
│ ├── cppcheckexecutor.cpp
│ ├── cppcheckexecutor.h
│ ├── cppcheck.rc
│ ├── cppcheck.vcproj
│ ├── cppcheck.vcxproj
│ ├── cppcheck.vcxproj.filters
│ ├── filelister.cpp
│ ├── filelister.h
│ ├── main.cpp
│ ├── pathmatch.cpp
│ ├── pathmatch.h
│ ├── resource.h
│ ├── threadexecutor.cpp
│ └── threadexecutor.h
├── COPYING
├── cppcheck.cbp
├── cppcheck.cppcheck
├── cppcheck.sln
├── cppcheck_vs2010.sln
├── Cppcheck.xcodeproj
│ └── project.pbxproj
├── createrelease
├── doxyfile
├── externals
│ └── tinyxml
│ ├── changes.txt
│ ├── tinystr.cpp
│ ├── tinystr.h
│ ├── tinyxml.cpp
│ ├── tinyxmlerror.cpp
│ ├── tinyxml.h
│ ├── tinyxmlparser.cpp
│ └── tinyxml.pri
├── generate_coverage_report
├── gui
│ ├── aboutdialog.cpp
│ ├── aboutdialog.h
│ ├── about.ui
│ ├── application.cpp
│ ├── applicationdialog.cpp
│ ├── applicationdialog.h
│ ├── application.h
│ ├── applicationlist.cpp
│ ├── applicationlist.h
│ ├── application.ui
│ ├── checkstatistics.cpp
│ ├── checkstatistics.h
│ ├── checkthread.cpp
│ ├── checkthread.h
│ ├── common.h
│ ├── cppcheck_de.ts
│ ├── cppcheck_en.ts
│ ├── cppcheck_es.ts
│ ├── cppcheck_fi.ts
│ ├── cppcheck_fr.ts
│ ├── cppcheck-gui.rc
│ ├── cppcheck.ico
│ ├── cppcheck_ja.ts
│ ├── cppcheck_nl.ts
│ ├── cppcheck_pl.ts
│ ├── cppcheck_ru.ts
│ ├── cppcheck_sr.ts
│ ├── cppcheck_sv.ts
│ ├── csvreport.cpp
│ ├── csvreport.h
│ ├── erroritem.cpp
│ ├── erroritem.h
│ ├── filelist.cpp
│ ├── filelist.h
│ ├── file.ui
│ ├── fileviewdialog.cpp
│ ├── fileviewdialog.h
│ ├── gui.cppcheck
│ ├── gui.pro
│ ├── gui.qrc
│ ├── help
│ │ ├── buildhelp.bat
│ │ ├── manual.html
│ │ ├── online-help.qhcp
│ │ └── online-help.qhp
│ ├── icon.png
│ ├── icon.svg
│ ├── images
│ │ ├── applications-development.png
│ │ ├── applications-system.png
│ │ ├── dialog-error.png
│ │ ├── dialog-information.png
│ │ ├── dialog-warning.png
│ │ ├── edit-clear.png
│ │ ├── go-down.png
│ │ ├── go-home.png
│ │ ├── go-next.png
│ │ ├── go-previous.png
│ │ ├── help-browser.png
│ │ ├── media-floppy.png
│ │ ├── openproject.png
│ │ ├── preferences-system.png
│ │ ├── process-stop.png
│ │ ├── showerrors.png
│ │ ├── showperformance.png
│ │ ├── showstylewarnings.png
│ │ ├── showwarnings.png
│ │ ├── text-x-generic.png
│ │ ├── utilities-system-monitor.png
│ │ └── view-refresh.png
│ ├── logview.cpp
│ ├── logview.h
│ ├── logview.ui
│ ├── main.cpp
│ ├── main.ui
│ ├── mainwindow.cpp
│ ├── mainwindow.h
│ ├── platforms.cpp
│ ├── platforms.h
│ ├── project.cpp
│ ├── projectfile.cpp
│ ├── projectfiledialog.cpp
│ ├── projectfiledialog.h
│ ├── projectfile.h
│ ├── projectfile.txt
│ ├── projectfile.ui
│ ├── project.h
│ ├── report.cpp
│ ├── report.h
│ ├── resultstree.cpp
│ ├── resultstree.h
│ ├── resultsview.cpp
│ ├── resultsview.h
│ ├── resultsview.ui
│ ├── settingsdialog.cpp
│ ├── settingsdialog.h
│ ├── settings.ui
│ ├── showtypes.cpp
│ ├── showtypes.h
│ ├── statsdialog.cpp
│ ├── statsdialog.h
│ ├── stats.ui
│ ├── test
│ │ ├── benchmark
│ │ │ ├── benchmark.pro
│ │ │ ├── common.pri
│ │ │ └── simple
│ │ │ ├── benchmarksimple.cpp
│ │ │ ├── benchmarksimple.h
│ │ │ └── simple.pro
│ │ ├── common.pri
│ │ ├── data
│ │ │ ├── benchmark
│ │ │ │ └── simple.cpp
│ │ │ ├── files
│ │ │ │ ├── bar1
│ │ │ │ ├── bar1.foo
│ │ │ │ ├── dir1
│ │ │ │ │ ├── dir11
│ │ │ │ │ │ └── foo11.cpp
│ │ │ │ │ └── foo1.cpp
│ │ │ │ ├── dir2
│ │ │ │ │ └── foo1.cpp
│ │ │ │ ├── foo1.cpp
│ │ │ │ ├── foo2.cxx
│ │ │ │ ├── foo3.cc
│ │ │ │ ├── foo4.c
│ │ │ │ ├── foo5.c++
│ │ │ │ ├── foo6.txx
│ │ │ │ └── foo7.tpp
│ │ │ ├── projectfiles
│ │ │ │ ├── simple.cppcheck
│ │ │ │ ├── simple_ignore.cppcheck
│ │ │ │ └── simple_noroot.cppcheck
│ │ │ └── xmlfiles
│ │ │ ├── xmlreport_v1.xml
│ │ │ └── xmlreport_v2.xml
│ │ ├── filelist
│ │ │ ├── filelist.pro
│ │ │ ├── testfilelist.cpp
│ │ │ └── testfilelist.h
│ │ ├── projectfile
│ │ │ ├── projectfile.pro
│ │ │ ├── testprojectfile.cpp
│ │ │ └── testprojectfile.h
│ │ ├── readme.txt
│ │ ├── test.pro
│ │ ├── translationhandler
│ │ │ ├── testtranslationhandler.cpp
│ │ │ ├── testtranslationhandler.h
│ │ │ └── translationhandler.pro
│ │ ├── xmlreport
│ │ │ ├── testxmlreport.cpp
│ │ │ ├── testxmlreport.h
│ │ │ └── xmlreport.pro
│ │ ├── xmlreportv1
│ │ │ ├── testxmlreportv1.cpp
│ │ │ ├── testxmlreportv1.h
│ │ │ └── xmlreportv1.pro
│ │ └── xmlreportv2
│ │ ├── testxmlreportv2.cpp
│ │ ├── testxmlreportv2.h
│ │ └── xmlreportv2.pro
│ ├── threadhandler.cpp
│ ├── threadhandler.h
│ ├── threadresult.cpp
│ ├── threadresult.h
│ ├── translationhandler.cpp
│ ├── translationhandler.h
│ ├── txtreport.cpp
│ ├── txtreport.h
│ ├── xmlreport.cpp
│ ├── xmlreport.h
│ ├── xmlreportv1.cpp
│ ├── xmlreportv1.h
│ ├── xmlreportv2.cpp
│ └── xmlreportv2.h
├── htdocs
│ ├── devinfo
│ │ └── index.php
│ ├── favicon.ico
│ ├── index.php
│ └── site
│ ├── activetopics.php
│ ├── css
│ │ └── all.css
│ ├── js
│ │ └── github.js
│ └── simplepie
│ ├── cache
│ │ └── dummy.txt
│ ├── LICENSE.txt
│ ├── README.txt
│ └── simplepie.inc
├── htmlreport
│ ├── cppcheck-htmlreport
│ ├── README.txt
│ └── setup.py
├── lib
│ ├── check64bit.cpp
│ ├── check64bit.h
│ ├── checkassignif.cpp
│ ├── checkassignif.h
│ ├── checkautovariables.cpp
│ ├── checkautovariables.h
│ ├── checkboost.cpp
│ ├── checkboost.h
│ ├── checkbufferoverrun.cpp
│ ├── checkbufferoverrun.h
│ ├── checkclass.cpp
│ ├── checkclass.h
│ ├── checkexceptionsafety.cpp
│ ├── checkexceptionsafety.h
│ ├── check.h
│ ├── checkinternal.cpp
│ ├── checkinternal.h
│ ├── checkmemoryleak.cpp
│ ├── checkmemoryleak.h
│ ├── checknonreentrantfunctions.cpp
│ ├── checknonreentrantfunctions.h
│ ├── checknullpointer.cpp
│ ├── checknullpointer.h
│ ├── checkobsoletefunctions.cpp
│ ├── checkobsoletefunctions.h
│ ├── checkother.cpp
│ ├── checkother.h
│ ├── checkpostfixoperator.cpp
│ ├── checkpostfixoperator.h
│ ├── checkstl.cpp
│ ├── checkstl.h
│ ├── checkuninitvar.cpp
│ ├── checkuninitvar.h
│ ├── checkunusedfunctions.cpp
│ ├── checkunusedfunctions.h
│ ├── checkunusedvar.cpp
│ ├── checkunusedvar.h
│ ├── cppcheck.cpp
│ ├── cppcheck.h
│ ├── errorlogger.cpp
│ ├── errorlogger.h
│ ├── executionpath.cpp
│ ├── executionpath.h
│ ├── lib.pri
│ ├── mathlib.cpp
│ ├── mathlib.h
│ ├── path.cpp
│ ├── path.h
│ ├── pcrerules.pri
│ ├── preprocessor.cpp
│ ├── preprocessor.h
│ ├── settings.cpp
│ ├── settings.h
│ ├── standards.h
│ ├── suppressions.cpp
│ ├── suppressions.h
│ ├── symboldatabase.cpp
│ ├── symboldatabase.h
│ ├── timer.cpp
│ ├── timer.h
│ ├── token.cpp
│ ├── token.h
│ ├── tokenize.cpp
│ └── tokenize.h
├── Makefile
├── man
│ ├── buildman.sh
│ ├── cppcheck.1.xml
│ ├── cppcheck-design.docbook
│ ├── manual.docbook
│ ├── writing-rules-1.docbook
│ ├── writing-rules-2.docbook
│ └── writing-rules-3.docbook
├── readme_64-bit_Windows.txt
├── readme_gui.txt
├── readme.txt
├── rules
│ ├── error-reporting.xml
│ ├── stl.xml
│ └── token-matching.xml
├── runastyle
├── runastyle.bat
├── test
│ ├── options.cpp
│ ├── options.h
│ ├── redirect.h
│ ├── test64bit.cpp
│ ├── testassignif.cpp
│ ├── testautovariables.cpp
│ ├── testboost.cpp
│ ├── testbufferoverrun.cpp
│ ├── testcharvar.cpp
│ ├── testclass.cpp
│ ├── testcmdlineparser.cpp
│ ├── testconstructors.cpp
│ ├── testcppcheck.cpp
│ ├── test.cxx
│ ├── testdivision.cpp
│ ├── testerrorlogger.cpp
│ ├── testexceptionsafety.cpp
│ ├── testfilelister.cpp
│ ├── testincompletestatement.cpp
│ ├── testinternal.cpp
│ ├── testmathlib.cpp
│ ├── testmemleak.cpp
│ ├── testnonreentrantfunctions.cpp
│ ├── testnullpointer.cpp
│ ├── testobsoletefunctions.cpp
│ ├── testoptions.cpp
│ ├── testother.cpp
│ ├── testpath.cpp
│ ├── testpathmatch.cpp
│ ├── testpostfixoperator.cpp
│ ├── testpreprocessor.cpp
│ ├── test.pro
│ ├── testrunner.cpp
│ ├── testrunner.vcproj
│ ├── testrunner.vcxproj
│ ├── testrunner.vcxproj.filters
│ ├── testsimplifytokens.cpp
│ ├── teststl.cpp
│ ├── testsuite.cpp
│ ├── testsuite.h
│ ├── testsuppressions.cpp
│ ├── testsymboldatabase.cpp
│ ├── testthreadexecutor.cpp
│ ├── testtoken.cpp
│ ├── testtokenize.cpp
│ ├── testuninitvar.cpp
│ ├── testunusedfunctions.cpp
│ ├── testunusedprivfunc.cpp
│ ├── testunusedvar.cpp
│ └── testutils.h
├── tools
│ ├── dmake.cpp
│ ├── dmake.vcproj
│ └── extracttests.py
├── webreport.sh
└── win_installer
├── Bitmaps
│ ├── banner.bmp
│ └── dialog.bmp
├── build1.bat
├── build2.bat
├── build3.bat
├── config.wxi
├── cppcheck.wixproj
├── cppcheck.wxs
├── GPLv3.rtf
├── productInfo.wxi
└── readme.txt
40 directories, 354 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论