摘记:代码检查错误列表

数据引用错误

是否有引用的变量未赋值或未初始化?

下标的值是否在范围之内?

是否存在非整数下标?

是否存在虚调用(指针的生命期大于所引用内存单元的生命期)?

当使用别名时属性是否正确?

记录和结构的属性是否匹配?

是否计算位串的地址?是否传递位串参数?

基础的存储属性是否正确?

跨过程的结构定义是否匹配?

索引或下标操作是否有“仅差一个”的错误?

继承需求是否得到满足?

运算错误

是否存在非算术变量间的运算?

是否存在混合模式的运算?

是否存在不同字长变量间的运算?

目标变量的大小是否小于赋值大小?

中间结果是否上溢或下溢?

是否存在被0除?

是否存在二进制的不精确度?

变量的值是否超过了有意义的范围?

操作符的优先顺序是否被正确理解?

整除除法是否正确?

数据声明错误

是否所有的变量都已声明?

默认的属性是否被正确理解?

数组和字符串的初始化是否正确?

变量是否赋予了正确的长度、类型和存储类?

是否有相似的变量名?

比较错误

是否存在不同类型变量间的比较?

是否存在混合模式的比较运算?

比较运算符是否正确?

布尔表达式是否正确?

比较运算是否与布尔表达式相混合?

是否存在二进制小数的比较?

操作符的优先顺序是否被正确理解?

编译器对布尔表达式的计算方式是否被正确理解?

控制流程错误

是否超出了多条分支路径?

是否每个循环都终止了?

是否每个程序都终止了?

是否存在由于入口条件不满足而跳过循环体?

可能的循环越界是否正确?

是否存在“仅差一个”的迭代错误?

DO/END语句是否匹配?

是否存在不能穷尽的判断?

输出信息中是否有文字或语法错误?

输入/输出错误

文件属性是否正确?

OPEN语句是否正确?

I/O语句是否符合格式规范?

缓冲大小与记录大小是否匹配?

文件在使用前是否打开?

文件在使用后是否关闭?

文件结束条件是否被正确处理?

是否处理了I/O错误?

接口错误

形参的数量是否等于实参的数量?

形参的属性是否与实参的属性相匹配?

形参的量纲是否与实参的量纲相匹配?

传递给被调用模块的实参个数是否等于其形参个数?

传递给被调用模块的实参属性是否与其形参属性匹配?

传递给被调用模块的实参量纲是否与其形参量纲匹配?

调用内部函数的实参的数量、属性、顺序是否正确?

是否引用了与当前入口点无关的形参?

是否改变了某个原本仅为输入值的形参?

全局变量的定义在模块间是否一致?

常数是否以实参形式传递过?

其他检查

在交叉引用列表中是否存在未引用过的变量?

属性列表是否与预期的相一致?

是否存在“警告”或“提示”信息?

是否对输入的合法性进行了检查?

是否遗漏了某个功能?

时间: 2024-08-27 17:01:13

摘记:代码检查错误列表的相关文章

代码检查错误列表

数据引用错误 1.是否有引用的变量未赋值或未初始化? 2.下标的值是否在范围之内? 3.是否存在非整数下标? 4.是否存在虚调用? 5.当使用别名时属性是否正确? 6.记录和结构的属性是否匹配? 7.是否计算位串的地址?是否传递位串参数? 8.基础的存储属性是否正确? 9.跨过程的结构定义是否匹配? 10.索引或下标操作是否有"仅差一个"的错误? 11.继承需求是否得到满足? 数据声明错误 1.是否所有的变量都已声明? 2.默认的属性是否被正确理解? 3.数组和字符串的初始化是否正确?

使用vue-cli脚手架搭建项目,保存编译时出现的代码检查错误(ESLint)

一.问题 出现这么写错误是什么原因呢?相信很多小白都会像我一样,第一次接触时有点二丈和尚摸不着头脑.其实是在你用vue-cli脚手架构建项目时用了ESLint代码检查工具,如下图 那么什么是ESLint呢? 二.ESLint介绍(中文官网) 官网是这用介绍的, ESLint 是一个开源的 JavaScript 代码检查工具,由 Nicholas C. Zakas 于2013年6月创建.代码检查是一种静态的分析,常用于寻找有问题的模式或者代码,并且不依赖于具体的编码风格.对大多数编程语言来说都会有

代码检查工具jshint和csslint

前面的话 Douglas Crockford大神根据自己的理念用JavaScript写了一个JavaScript代码规范检查工具,这就是JSLint.后来非常流行,也的确帮助了广大的JavaScript程序员.但是,大神对于自己的代码规范不做丝毫的妥协,对开源社区的反馈的回应也不礼貌.于是,JSLint从一个帮助程序员规范代码,避免Bug的工具,变成了一个让代码像Crockford的工具.在最不信神的IT界,这当然不能忍了 2011年,一个叫Anton Kovalyov的前端程序员借助开源社区的

Java常见错误列表

Java常见错误列表: 找不到符号(symbol) 类X是public的,应该被声明在名为X.java的文件中 缺失类.接口或枚举类型 缺失X 缺失标识符 非法的表达式开头 类型不兼容 非法的方法声明;需要返回类型 数组越界(java.lang.ArrayIndexOutOfBoundsException) 字符越界(java.lang.StringIndexOutOfBoundsException) 类Y中的方法X参数不匹配 缺少return语句 精度损失 在解析时到达了文件结尾 执行不到的语

测试的艺术:代码检查、走查与评审

软件开发人员通常不会考虑的一种测试形式-人工测试. 大多数人都以为,因为程序是为了供机器执行而编写的,那么也该由机器来对程序进行测试.这种想法是有问题的.人工测试方法在暴露错误方面是很有成效的.实际上,大多数的软件项目都应使用到一下的人工测试方法: 1. 利用错误列表进行代码检查 2. 小组代码走查 3. 桌面检查 4. 同行评审 代码检查: 所谓代码检查是以组为单位阅读代码,它是一系列规程和错误检查技术的集合. 一个代码检查小组通常由四人组成: 协调人:以为称职的程序员 该程序的编码人员 该程

Improving Code Inspection with Annotations——使用注解改善代码检查

使用代码检查工具,例如lint,可以帮助你检查问题并改善代码,但是检查工具也就只能推断这么多.例如Android资源id,使用int来标识字符串,图形,颜色和其他资源类型,而检查工具不能告诉你当在需要指定一个颜色的地方你指定了一个字符串资源.这种情况意味着你的应用可能渲染不正确或根本运行失败,即使你使用了代码检查. 注解允许你提供暗示给像lint的代码检查工具,来帮助检测这些更精细的代码问题.它们以元数据标签添加,你可以附在变量,参数,和返回值来检查方法返回值,传递的参数,局部变量和字段.当使用

静态代码检查工具 cppcheck 的使用(可分别集成到VS和QT Creator里)

CppCheck是一个C/C++代码缺陷静态检查工具.不同于C/C++编译器及其它分析工具,CppCheck只检查编译器检查不出来的bug,不检查语法错误.所谓静态代码检查就是使用一个工具检查我们写的代码是否安全和健壮,是否有隐藏的问题. 比如无意间写了这样的代码: [cpp] view plain copy int n = 10; char* buffer = new char[n]; buffer[n] = 0; 这完全是符合语法规范的,但是静态代码检查工具会提示此处会溢出.也就是说,它是一

JavaScript代码检查工具 — JSHint

静态代码检查是开发工作中不可缺少的一环,毕竟对于程序化的工作人的眼睛是不可靠的,更何况是自己的眼睛看自己的代码.即使最后的运行结果通过,但可能存在一些未定义的变量.定义了但最后没用过的变量.分号有没有加(看团队规则)以及其他的问题.给力的工具必不可缺. 在本文要介绍的JSHint之前还有JSLint,道格拉斯的作品,应该是JavaScript精粹的附属产物...要求你必须使用它的规则,对于JavaScript这样一个灵活的语言,还是要用一个灵活的工具,JSHint就是就是这样. 安装 首先需要安

华为软件开发云测评报告二:代码检查

相关文章:<华为软件开发云测评报告一:项目管理> 体验环境 体验方式:PC端 系统:Windows 64位 浏览器类型:Chrome浏览器 浏览器版本:58.0.3029.110 体验时间:2017.06.25 分析目的 了解华为软件开发云的代码检查服务功能,分析其优缺点: 从人工代码检视到自动化代码检查,华为软件开发云如何保证代码质量: 代码检查未来的发展趋势: 产品简介 产品名称:华为软件开发云 定位:软件开发云(DevCloud)是集华为研发实践.前沿研发理念.先进研发工具为一体的研发云