zoukankan      html  css  js  c++  java
  • 【转载】C嵌入式软件的编码错误爬行榜

    原文链接:http://blog.csdn.net/myaccella/article/details/7008168

    排名说明:

    • 该排名是针对n次走读结果的统计
    • 该排名的走读产品为C编写的嵌入式软件

     第九名:编码规范类

    • 变量命名不一致
    • 运算符和表达式不易理解
    • 过度使用编码技巧减低了可读性
    • 直接使用数字常量而非宏定义
    • 书写不一致等等

    第八名:接口类

    • 函数参数类型或个数不一致
    • 模块间常量或宏重复定义且不一致
    • 头文件和库不一致,不同版本

    第七名:参数变量类

    • 使用未初始化变量
    • 重新使用前没有reset
    • 不恰当的变量类型定义
    • 初始化不完整
    • 变量重命名

    第六名:功能类

    • 功能分支不全
    • 缺少部分操作或数据
    • 信息诊断有误
    • 缺少调试和测试功能
    • 故障没有检测和自愈功能

    第五名:资源冲突类

    • 资源不作保护
    • 资源不当保护
    • 公共资源丢失

    第四名:低效繁琐类

    • 算法效率低下
    • 同样的代码块重复多次
    • 用小步进的for循环在数据块间拷贝数据
    • 冗余语句
    • 可用switch/case却用if...if...if语句

    第三名:控制流程类

    • 条件控制不完整
    • 循环的起点和终点不正确
    • 不正确的函数调用
    • 跳转和返回不及时
    • 匹配操作未匹配使用

    第二名:异常保护类

    • 遗漏必要保护
    • 保护不够严密
    • 保护处理不可靠
    • 断言错误

    第一名:内存使用类

    • 内存泄漏
    • 使用非法内存
    • 内存越界
    • 栈溢出
  • 相关阅读:
    一种动态部署JBoss应用的简单方法
    虚拟机启动的一个Bat文件(启动虚拟机.bat)
    Windows 设置了文件夹共享,删除默认Everyone共享,设置其他用户共享之后打不开的问题
    命令按钮怎么直接指定带参数的宏?
    bat延时
    wrapper.java.additional
    win7下vc6.0的安装
    UVA10391
    UVALive3708
    C++红黑树(类模板实现)
  • 原文地址:https://www.cnblogs.com/codecamel/p/4582887.html
Copyright © 2011-2022 走看看