C/C++ 代码分析概述

C/C++ Code Analysis工具提供有关 C/C++ 源代码中可能缺陷的信息。 工具报告的常见编码错误包括缓冲区溢出、内存未初始化、null 指针取消引用以及内存和资源泄漏。 该工具还可以针对应用程序运行 C++ Core Guidelines

集成开发环境 (IDE) 集成

代码分析工具已完全集成到 Visual Studio IDE 中。

在生成过程中,源代码产生的任何警告都显示在错误列表中。 你可以导航到导致该警告的源代码并查看更多信息,了解相关原因和找出问题可能的解决方案。

命令行支持

还可以从命令行使用分析工具,如以下示例所示:

C:\>cl /analyze Sample.cpp

Visual Studio 2017 版本 15.7 及更高版本:可以使用任何生成系统(包括 CMake)从命令行运行该工具。

#pragma支持

可以使用 指令将 #pragma 警告视为错误;启用或禁用警告,以及禁止显示各个代码行的警告。 有关详细信息,请参阅 Pragma 指令和 __pragma_Pragma 关键字

批注支持

注释可以提高代码分析的准确性。 注释可以提供有关函数参数和返回类型的先决条件和后置条件的其他信息。 有关详细信息,请参阅使用 SAL 注释减少 C/C++ 代码缺陷

根据签入策略运行代码分析

建议要求所有源代码签入均满足特定策略。 具体而言,建议确保在最近的本地生成过程中运行分析。 有关启用代码分析签入策略的信息,请参阅创建和使用Code Analysis Check-In策略

Team Build 集成

可以使用生成系统的集成功能来运行代码分析工具,作为生成Azure DevOps步骤。 有关详细信息,请参阅 Azure Pipelines

另请参阅