当声明结构数组时,CPPCHECK停止对整个文件的分析
cppcheck stops analysis of whole file when array of struct is declared
我正在使用 cppcheck 。
运行静态代码分析。我有一个cpp源文件,该文件作为" null指针删除"等错误
文件中有一块代码。在类中声明结构
class Example{
public:
typedef struct {
int num;
}MyStruct;
};
当声明结构数组
时Example::MyStruct st_arr[5];
cppcheck一旦达到此代码就可以停止分析,并且不会进一步报告文件中的其他错误。
但是,如果我只是声明结构变量
Example::MyStruct st;
很好。
因此,当创建结构数组(在类中声明(时,CPPCHECK停止了分析。这是Cppcheck的问题吗?
我是CPPCHECK开发人员。
我也看到了如此奇怪的行为。这不是故意的。我将调查。
最好的问候,丹尼尔·玛雅马基(DanielMarjamäki(
可以配置大多数静态分析工具,以不报告库标题中的错误。您可能必须配置CPPCHECK以识别标头,例如通过定义被视为库文件的路径。他们通常还会在源代码中解析特殊评论,可用于抑制代码区域中的错误,例如在包含之前抑制错误,然后重新启用之后。工具文档中描述了这种工作的工作方式。
这些工具还具有定义抑制以丢弃错误的能力,例如误报。这也可用于抑制第三方代码的错误。
CPPCHECK手册章节"第8章"answers"第9章。库配置"应解释如何执行此操作。如果您对配置有特定的问题,则可以发布更详细的问题。
相关文章:
- C++将文本文件中的数据读取到结构数组中
- 调用 C 文件中的"C++"结构
- 结构包含在两个头文件中,这两个文件我都不拥有
- 在头文件和 cpp 文件中使用一次 #pragma 时出现结构重定义错误
- 介子复制/安装头文件到输出目录并保持文件夹结构
- Windows 将标准的 C 文件结构注入到正在运行的进程中
- 如何读取/查询文件系统和文件结构
- C++/Python 中对象和结构的二进制文件结构
- 在 C++ 和 C# 之间共享内存映射文件结构
- 在文件结构中使用字符串而不是带有 read() 和 write() 的字符数组
- C++ while 循环在自定义文件结构中
- QT C 读取自定义文件结构
- CPP 头文件结构错误
- 安卓rom文件结构和调试
- 文件映射和文件结构
- 文件结构,以避免数据损坏
- 文件处理中给出奇怪值的流(指向文件结构的指针)
- 程序c++程序的文件结构
- 常规c++程序头文件结构
- FreeBSD 和 Linux 中的 ELF 文件结构