一个免费的工具,可以根据一组编码标准检查C / C ++源代码吗?

一个免费的工具,可以根据一组编码标准检查C / C ++源代码吗?

A free tool to check C/C++ source code against a set of coding standards?

为Java(Checkstyle,JCSC)找到这样的工具看起来很容易,但是我似乎找不到C / C ++的工具。 我不是在寻找像皮棉一样的静态代码分析器,我只想检查编码标准,例如变量命名,大写,间距,标识,括号放置等。


我知道的唯一工具是Vera。但是,由于尚未使用它,因此无法评论它的可行性。 演示看起来很有前途。


Google代码风格指南中的Google c ++ lint。


我确信这可以在某种程度上帮助cxx检查器。同样,该工具似乎还不错。KWStyle来自Kitware,他们是开发Cmake的人。


并非完全符合您的要求,但是我发现,只要所有人都同意astyle可以生成然后自动执行该过程的编码标准,就比较容易。


尝试使用nsiqcppstyle。这是用于C / C ++的基于Python的编码样式检查器。扩展以添加您自己的规则很容易。


有一个清单。夹板上还有一个假定的C ++前端。


在sourceforge.net上检查universalindentgui

它具有许多C语言样式检查器,您可以自定义检查器。


我在工作中使用了LDRA工具套件

它用于测试c / c ++代码,但也可以对照MISRA等编码标准进行检查。


检查Metrix ++ http://metrixplusplus.sourceforge.net/。它可能需要一些特定于您需要的扩展。


Hudson也通过同名插件支持cppcheck。


签出Abraxas代码检查
http://www.abxsoft.com/codchk_user.html


我目前正在一个项目上,另一个项目正在编写这种工具。我查看了其他静态代码分析工具,并决定可以做得更好。

不幸的是,在没有相当熟悉代码的情况下,该项目尚未准备就绪可以使用(请阅读:充满麻烦的越野车)。不过,我们的步伐相当快,希望在接下来的8周内发布Beta版。

该项目是开源的-您可以访问项目页面,如果您想参与其中,我们希望获得更多的外部意见。

我不会为您带来任何细节-您可以为此访问项目页面,但是我会说一件事:大多数静态代码分析工具都旨在检查您的代码是否有错误,而不是非常关注检查编码准则。我们采用了一种更灵活的方法,该方法允许我们编写插件来检查"内部规则"以及可能的错误。

如果您需要更多信息,请随时与我联系。

干杯,


推荐阅读

    linux命令补全工具?

    linux命令补全工具?,工具,系统,软件,地址,命令,名称,智能,环境,信息,终端,简

    检查linux服务器命令?

    检查linux服务器命令?,系统,信息,状态,情况,时间,工具,网络,环境,服务,电脑,

    linux系统命令行工具?

    linux系统命令行工具?,工具,系统,工作,状态,命令,地方,标准,信息,环境,基础,L

    linux设置编码命令?

    linux设置编码命令?,系统,数据,发展,文件,字符集,命令,数据库,以下,终端,大

    linux命令下载工具?

    linux命令下载工具?,工具,网络,代理,代码,简介,位置,系统,第一,下载工具,文

    linux好用的命令工具?

    linux好用的命令工具?,系统,管理,工具,基础,服务,信息,工作,发行,公司,代码,L

    linux检查硬盘的命令?

    linux检查硬盘的命令?,系统,信息,检测,情况,命令,工具,电脑,地址,设备,硬盘,l

    linux常用命令行工具?

    linux常用命令行工具?,系统,工作,工具,地址,管理,信息,命令,软件,目录,基础,l

    linux命令行专业工具?

    linux命令行专业工具?,工具,系统,工作,信息,服务,环境,基础,命令,管理,发行,l

    linux命令行执行工具?

    linux命令行执行工具?,工具,系统,网络,分析,工作,服务,状态,信息,电脑,发行,s

    linux命令行执行工具?

    linux命令行执行工具?,工具,系统,网络,分析,工作,服务,状态,信息,电脑,发行,s

    linux编译源代码命令?

    linux编译源代码命令?,工具,代码,百度,最新,环境,项目,系统,电脑,密码,内核,l

    linux检查挂载命令?

    linux检查挂载命令?,设备,系统,信息,情况,状态,服务,软件,命令,磁盘,网络,lin

    开发linux命令工具?

    开发linux命令工具?,系统,工具,环境,状态,平台,设计,数据,电脑,中小企业,标

    linux命令看文件编码?

    linux命令看文件编码?,状态,系统,文件,工具,名称,数据,命令,格式,汉字,以下,L

    linux命令行工具大全?

    linux命令行工具大全?,工作,系统,工具,地址,信息,命令,目录,基础,管理,文件,l

    linux一般检查命令?

    linux一般检查命令?,网络,系统,检测,情况,工作,信息,命令,进程,时间,设备,lin

    检查硬件linux命令?

    检查硬件linux命令?,信息,系统,第一,数据,设备,检测,命令,情况,灵活,实时,如

    linux命令联想工具?

    linux命令联想工具?,地址,工作,系统,工具,状态,标准,信息,命令,目录,左下角,L

    检查路由命令linux?

    检查路由命令linux?,网络,地址,系统,信息,工具,电脑,时间,通信,服务,命令,lin