摘要 | 第4-5页 |
ABSTRACT | 第5-6页 |
第一章 绪论 | 第11-18页 |
1.1 研究背景 | 第11-12页 |
1.2 研究现状 | 第12-14页 |
1.3 研究意义 | 第14-15页 |
1.4 研究内容 | 第15-16页 |
1.5 主要工作 | 第16页 |
1.6 本文的组织结构 | 第16-18页 |
第二章 相关理论及技术 | 第18-26页 |
2.1 软件检测概述 | 第18-21页 |
2.2 静态分析技术研究 | 第21-24页 |
2.2.1 基本分析 | 第21-22页 |
2.2.2 基于形式化方法的分析 | 第22-23页 |
2.2.3 指向分析 | 第23-24页 |
2.2.4 其它辅助分析 | 第24页 |
2.3 静态代码检测工具的评价指标 | 第24-25页 |
2.4 本章小结 | 第25-26页 |
第三章 静态代码检测工具设计 | 第26-33页 |
3.1 静态代码检测工具概述 | 第26-27页 |
3.2 GJB5369-2005编程规范 | 第27-29页 |
3.2.1 GJB5369-2005编程规范简介 | 第27-28页 |
3.2.2 GJB5369-2005编程规范规则分析 | 第28-29页 |
3.3 静态代码检测工具功能设计 | 第29-30页 |
3.4 静态代码检测工具结构框架设计 | 第30-32页 |
3.5 静态代码检测工具检测流程设计 | 第32页 |
3.6 本章小结 | 第32-33页 |
第四章 静态代码检测工具实现 | 第33-53页 |
4.1 视图模块 | 第33-35页 |
4.1.1 检测工具界面实现 | 第33-34页 |
4.1.2 功能优化 | 第34-35页 |
4.2 C语言代码预处理模块 | 第35-44页 |
4.2.1 中间文件生成 | 第36页 |
4.2.3 抽象语法树模型实现 | 第36-39页 |
4.2.4 抽象语法树构建 | 第39-44页 |
4.2.5 抽象语法树节点对象的封装 | 第44页 |
4.3 规则检测模块 | 第44-48页 |
4.3.1 声明定义类规则 | 第44-45页 |
4.3.2 版面书写类规则 | 第45-46页 |
4.3.3 分支控制类规则 | 第46-48页 |
4.3.4 运算处理类规则 | 第48页 |
4.4 数据存储模块 | 第48-51页 |
4.4.1 数据库表设计 | 第48-50页 |
4.4.2 数据存储 | 第50-51页 |
4.5 本章小结 | 第51-53页 |
第五章 工具测试与分析 | 第53-59页 |
5.1 单元测试 | 第53-54页 |
5.2 集成测试 | 第54-56页 |
5.3 与Testbed静态代码检测工具的检测对比测试 | 第56-57页 |
5.4 测试结果及分析 | 第57-58页 |
5.5 本章小结 | 第58-59页 |
第六章 总结与展望 | 第59-61页 |
6.1 总结 | 第59页 |
6.2 未来展望 | 第59-61页 |
参考文献 | 第61-63页 |
致谢 | 第63页 |