[课程背景] C/C++语言的语法非常灵活性,尤其是指针及内存使用,这种灵活性使代码效率比较高,但同时也使得代码编写具有较大的随意性,另外C/C++编译器不进行强制类型检查,也不对数据边界和有效性进行检查,这让开发者在开发过程中容易引入一些致命或严重问题,增加了代码中存在隐患的可能性,最终导致软件产品的质量问题. 如果能够在代码提交测试之前发现这些隐患,减少软件项目的除错成本,提前发现并消除这些致命或严重的bug,可是传统的C/C++编译器没有包含对这些错误的检查,这个任务只能由专用的静态代码分…