CppCheck C++静态代码检查工具在Visual Studio(VS)下的配置和使用
本文介绍如何在Visual Studio(VS)下使用CppCheck检查代码,包括安装和使用两个部分。与网上通过vs外部工具使用CppCheck的方法不同,本文介绍了CppCheck的vs插件,配置更方便,使用体验更好。
摘要
本文介绍如何在Visual Studio(VS)下使用CppCheck检查代码,包括安装和使用两个部分。与网上通过vs外部工具使用CppCheck的方法不同,本文介绍了CppCheck的vs插件,配置更方便,使用体验更好。
介绍
Cppcheck是一个C/C++代码的静态分析工具。与C++编译器和其他许多分析工具不同,Cppcheck不检测代码中的语法错误,只检测那些编译器通常无法检测到的bug类型,目的是只检测代码中真正的错误。下面是Cppcheck的一些检查项:
- 检查边界溢出
- 检查内存泄漏
- 检查可能的空指针间接引用
- 检查未初始化的变量
- 检查无效的STL使用
- 检查异常安全
- 警告如果过时的或者不安全的函数使用
- 警告未使用的或者冗余的代码
- 检测各种潜在bugs的可疑代码等
所有检查项可以查看这里:https://sourceforge.net/p/cppcheck/wiki/ListOfChecks/
CppCheck使用方法:
- 命令行调用
- 可视化界面使用
- 作为外部工具使用。若开发工具支持外部工具扩展,可手动配置为外部工具使用
- 作为插件使用。若开发工具包含CppCheck插件,可作为插件使用
本文使用第四重方法,通过插件使用CppCheck。 CppCheck在许多流行的开发工具上已经有对应插件,例如:Visual Studio、Code::Blocks、CLion 、QtCreator 、KDevelop 、Git (Linux)等,完整插件支持看这里:http://cppcheck.net/
安装
- 安装CppCheck
在CppCheck官网下载并安装, 本文下载的是cppcheck-1.87-x64-Setup.msi。 - 接着安装vs插件
在cppcheck-vs-addin下载并安装vs插件,本文下载的是CppcheckPlugin_1.3.6.vsix。
注意: vs的CppCheck插件不包含CppCheck本身,因此需要先安装CppCheck再安装CppCheck的vs插件。详情见cppcheck-vs-addin的说明:
NOTE: The add-in does not deploy Cppcheck executable. Please, go to Cppcheck website, download the installer and install it before first use of the add-in. The add-in then may prompt for location of the cppcheck.exe.
- 安装完毕
重启vs,安装完毕,接下来看如何使用。
使用
使用一段测试代码,测试一下CppCheck效果。
使用的测试代码:
int main()
{
int array_temp[100];
int a = array_temp[200];
}
测试结果:
- vs编译结果(编译通过,未提示错误):
- CppCheck结果:
点击 工具 选择 Check current project with cppcheck
检查出了编译器未检查出的访问越界错误:
相关/参考链接
官网: http://cppcheck.net/
vs插件地址: https://github.com/VioletGiraffe/cppcheck-vs-addin
C++静态代码检查工具cppcheck在vs下安装与测试步骤: https://blog.csdn.net/qq_16783973/article/details/54907896
Poor Man’s Visual Studio Cppcheck Integration: http://avitebskiy.blogspot.com/2012/10/poor-mans-visual-studio-cppcheck.html
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)