C/C++ 代码分析概述
C/C++ 代码分析工具提供有关 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++ 代码缺陷。
根据签入策略运行代码分析
建议要求所有源代码签入均满足特定策略。 具体而言,建议确保在最近的本地生成过程中运行分析。 有关启用代码分析签入策略的详细信息,请参阅创建和使用代码分析签入策略。
Team Build 集成
可以使用生成系统的集成功能在 Azure DevOps 生成过程中运行代码分析工具。 有关详细信息,请参阅 Azure Pipelines。