Cppcheck2.6帮助手册-中文版_cppcheck使用(1).docxVIP

Cppcheck2.6帮助手册-中文版_cppcheck使用(1).docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

Cppcheck2.6帮助手册

翻译:刘勇生

目录

TOC\o1-3\h\u1.简介 4

1.1.关于静态分析 4

2.开始 5

2.1.图形化 5

2.2.命令行 5

2.2.1.第一个测试 5

2.2.2.检测目录中所有文件 6

2.2.3.手动检查文件或使用项目文件 6

2.2.4.文件筛选器 6

2.2.5.排除检测文件或文件夹 7

2.2.6.clang解析器(实验性的) 7

2.3.严重性 7

2.4.模板代码加速分析 8

3.Cppcheck生成文件夹 10

4.导入项目 11

4.1.图形化项目 11

4.2.CMake 11

4.3.VisualStudio 11

4.4.C++Builder6 12

4.5.其他 12

5.预处理设置 12

5.1.预处理器定义的自动配置(宏) 13

5.2.Include路径 14

6.平台(Platform) 14

7.C/C++标准 15

8.Cppcheck生成目录 16

9.抑制项 16

9.1.纯文本抑制 16

9.2.命令行抑制 17

9.3.抑制文件 17

9.4.XML抑制文件 17

9.5.内联抑制 18

9.5.1.格式 18

9.5.2.单个抑制 18

9.5.3.多个抑制 19

9.5.4.变量名称 20

9.5.5.抑制的注释 20

10.XML输出 21

10.1.error元素 21

10.2.location元素 22

11.重新格式化文本输出 22

11.1.预定义输出格式 22

11.2.用户定义输出格式(单行) 23

11.3.用户定义输出格式(多行) 23

11.3.1.-template的格式说明符 25

11.3.2.-template-location的格式说明符 26

12.插件 26

12.1.支持的插件 27

12.2.运行插件 27

13.库配置 28

13.1.自定义.cfg文件 28

14.HTML报告 29

15.缺陷狩猎(Bughunting) 29

15.1.激活此分析 30

15.2.约定(Contracts) 30

15.2.1.函数约定(Functioncontracts) 30

15.2.2.变量约定(Variablecontracts) 32

15.3.不完全分析(Incompleteanalysis) 33

简介

Cppcheck是一个C/C++代码分析工具。它提供独特的代码分析检测漏洞,重点检测未定义的行为和危险编码构造。目标是只检测代码中的真实错误,并生成尽可能少的误报(错误报告的警告)。Cppcheck是设计用于分析C/C++代码,即使它有非标准语法常见于嵌入式项目等。

支持的代码和平台:

Cppcheck检查包含各种编译器扩展、内联汇编代码等的非标准代码。

Cppcheck可以在支持C++11或更高版本的编译器中进行编译

Cppcheck是跨平台的,用于各种posix/windows/etc环境。

Cppcheck中的检查并不完美。能找到一些漏洞,有些漏洞检测不到。

关于静态分析

通过静态分析,您可以发现以下几种错误:

未定义的行为

使用危险的代码模式

编码风格

有许多静态分析无法发现的错误。静态分析工具不具备人类对程序意图的了解。如果程序的输出有效但不是期望结果,那么在大多数情况下静态分析工具无法检测到这一点。例如,如果您的小程序在屏幕上写“Helo”而不是“Hello”。任何工具都不太可能对此认为是个缺陷。

静态分析只能应该作为质量检测保证的补充,不取代任何其他质量控制的技术,比如:

精心设计

测试

动态分析

模糊化

开始

图形化

这不是必需的,但是创建一个新的项目文件是很好的第一步。有一个

你可以调整一些选项来获得好的结果。在“项目设置”对话框中,您看到的第一个选项是“导入项目”。如果可以,建议您使用此功能。Cppcheck可以导入:

?Visualstudio解决方案/项目

?编译数据库,可从CMake/qbs/etc构建文件生成

?BorlandC++Builder6

填写项目设置并单击“确定”后,Cppcheck将开始分析。

命令行

第一个测试

测试代码:

intmain(

文档评论(0)

wszwtlg202 + 关注
实名认证
文档贡献者

一页纸且

1亿VIP精品文档

相关文档