项目名称:检查日期:项目编号:检查人:项目负责人:确认人:检查大项检查子项完成情况备注一、数据引用错误是否有引用的变量未赋值或未初始化?对于所有的数组引用,是否每一个下标的值都在相应维规定的界限之内?对于所有的数组引用,是否每一个下标的值都是整数?对于所有的通过指针或引用变量的引用,当前引用的内存单元是否分配?对于面向对象的语言,是否所有的继承需求都在实现类中得到了满足?索引或下标操作是否有”仅差一个”的错误?二、数据声明错误是否每个变量都已声明?是否每个变量都被赋予了正确的长度和数据类型?是否存在着易引起误解的相似名称的变量?数组和字符串的初始化是否正确?初始化是否与存储类相一致?三、运算错误是否存在不一致的数据类型(如非算术类型)的变量间的运算?在表达式的运算中是否存在表达式向上或向下溢出的情况?除法运算中的除数是否可能为0?对于包含一个以上操作符的表达式,赋值顺序和操作符的优先顺序是否正确?四、比较错误比较运算符是否正确?如“至多”、“至少”、“大于”、“不小于”、“小于”和“等于”等比较关系。是否存在不同类型变量间的比较?是否存在混合模式的比较运算?每个布尔表达式所叙述的内容是否都正确?对于那些包含一个以上布尔运算符的表达式,赋值顺序以运算符的优先顺序是否正确?五、控制流程错误是否所有的循环都终止了?程序、模块或子程序是否最终都终止了?由于实际情况没有满足循环的入口条件,循环体是否有可能从未执行过?循环次数边界次数是否正确?是否存在不能穷尽的判断?如果是这样的话,这种假设是否有效?是否存在“仅差一个”的迭代错误?输出信息中是否有文字或语法错误?六、接口错误被调用模块接收到的形参(parameter)数量是否等于调用模块发送的实参(argument)数量?另外,顺序是否正确?实参的属性(如数据类型和大小)是否与相应形参的属性相匹配?代码评审活动Checklist实参的量纲是否与对应形参的量纳相匹配?是否有子程序改变了某个原本仅为输入值的形参?如果存在全局变量,在所有引用它们的模块中,它们的定义和属性是否相同?七、输入输出错误打开文件的语句中各项属性的设置是否正确?格式规范是否与I/O语句中的信息想吻合?是否所有的文件在使用之前都打开了?是否所有的文件在使用之后都关闭了?是否判断文件结束的条件,并正确处理?对I/O出错情况处理是否正确?任何打印或显示的文本信息中是否存在拼写或语法错误?八、其他错误是否有变量从未引用过,或仅被引用过一次?是否存在编译器提供的“警告”或“提示”信息?程序或模块是否具有足够的鲁棒性?程序是否遗漏了某个功能?本次检查小计:合格√合格项数量:一般符合一般符合项数量:不符合不符合项数量:不适用不适用项数量: