全部学习汇总: GitHub - GreyZhang/misra_c_hacking: MISRA C, I'm coming! Happy hacking!

这一次看两条规则,都是关于声明的。其中8.6针对的是函数,8.7针对的是对象。

8.6,函数必须在文件的级别进行声明,否则的话可能会带来一定的混淆。其实,这一条通过简单的编码风格要求也很容易实现,只需要做一个基本要求:全局类的函数接口全都在且仅在一个头文件中声明,而静态函数只在相应的C文件的最开始部分(头文件包含等基本信息之后)做声明。通过这样的风格要求很容易保证这样的规则要求覆盖度。

8.7,这一条是针对对象的。这个可能包含变量以及常量等,只要是这个对象只在一个块中进行声明。说到底,鼓励使用局部量,这局部量可能有局部变量、常量、静态量等不同的区分。但是只要是在这个单模块中用的,不要暴露出去。这样,其实也会减少了误操作。

或许出于多年的工作习惯,这两条犯错的可能性要是不说兴许我都忘记了这在C语言中还是合法的用法。但是,也算是给了我一定的提示,基础的基本功还是很有必要的。

1198_MISRA_C规范学习笔记_Rule 8.6 Rule 8.7相关推荐

  1. 1203_MISRA_C规范学习笔记_Rule 9.1

    全部学习汇总: GitHub - GreyZhang/misra_c_hacking: MISRA C, I'm coming! Happy hacking! 所有的自动变量在使用之前都应该被赋值. ...

  2. 1209_MISRA_C规范学习笔记_Rule 10.6

    全部学习汇总: https://github.com/GreyZhang/misra_c_hacking 对于所有的无符号类型的常量数字都用一个后缀U来进行标识. 这里面有几个可能导致误区的知识点: ...

  3. 979_MISRA C规范学习笔记3

    MISRA C规范学习笔记3 Grey 全部学习汇总: https://github.com/GreyZhang/misra_c_hacking MISRA C规范学习笔记3 文档学习 实际的实施中, ...

  4. 蓝牙篇之蓝牙核心规范学习笔记(V5.3)汇总

    蓝牙核心规范5.3版,一共3085页,博主以思维导图的方式,记录博主学习蓝牙规范,想要一起学习的小伙伴,可以一起学习. 特别声明:想要啃3000多页英文规范,可以直接忽略本专栏. 关注左侧公众号,回复 ...

  5. 阿里java开发规范学习笔记 (V1.5华山版)

    学习总结 本次开发编码规范手册的变更,相比上一版本存在较多的变化. 主要集中在,对于其中的原理有了更深层次的追踪和了解: 1. 集合元素章节对于集合元素的处理上容易出现问题的地方. 2. 新增敏捷模式 ...

  6. 1211_MISRA_C规范学习笔记_表达式的要求

    全部学习汇总: https://github.com/GreyZhang/misra_c_hacking 12.1, 规则12.1(咨询):在表达式中,应该对C语言的运算符优先级规则有一定的限制. 关 ...

  7. C语言编程规范 学习笔记

    C语言编程规范 一.代码总体原则 1.清晰 2.简洁 3.选择适合的风格,与代码原有风格保持一致 二.头文件 背景 术语定义 原则 2.1 头文件中适合放置接口的声明,不适合放置实现 原则 2.2 头 ...

  8. “华为云企业级Java编程规范”学习笔记

    一."Java基础语句"编程规范 Switch 语句要有defualt分支,除非Swich的条件变量是枚举类型; 多条件分支语句最后应包含一个else分支; 二."类的使 ...

  9. C语言编程规范学习笔记和总结(附华为编程规范机试参考试题)

    目录 规范说明 一.头文件 原则1.1 头文件中适合放置接口的声明,不适合放置实现. 原则1.2 头文件应当职责单一 原则1.3 头文件应向稳定的方向包含 规则1.1 每一个.c文件应有一个同名.h文 ...

  10. GB/T 24363-2009 信息安全技术 信息安全应急响应计划规范 学习笔记

    通用内容 每个标准基本都有的格式,供写文档的我们参考 定义和术语: 国家标准当中涉及到的相关专业名称,都会有一个定义,防止出现理解上的歧义 结构层次: 一般有个当前文档的完整结构,可以是图,可以是表, ...

最新文章

  1. 一种高效的可变行高列表行定位算法
  2. 用7*7的卷积核分类9*9的图片到底应该用几个卷积核?55个
  3. path弧形参数 svg_SVG路径中的A指令(画弧线)
  4. 2017年度IT168技术卓越奖名单:服务器类
  5. K8S_Google工作笔记0004---平台规划和部署方式介绍_搭建k8s集群准备
  6. cvSaveImage用法
  7. 《普林斯顿微积分读本》笔记-第2章三角学回顾
  8. 华为云D-Plan解决方案为企业数智升级注入AI新动力
  9. 【CF487E】Tourists
  10. Microsoft Office安装全过程记录
  11. shapely包的使用
  12. python大数据读取分析_python如何读取大数据
  13. java jsp公共异常页面_javaWEB总结(16):jsp错误页面的处理
  14. 广东省中医院微信公众号医保个账支付功能
  15. 在几何画板中如何制作圆柱的侧面展开动画_如何用几何画板做三棱柱的侧面展开动画...
  16. 基于机器学习的车牌识别系统(Python实现基于SVM支持向量机的车牌分类)
  17. 【Mac】动图截图工具Kap
  18. 《嫌疑人X的献身》读后感
  19. 英语思维导图大全 非谓语(十二)
  20. Linux配置分布式数据/mysql集群 ndb_mgmd 实验报错摘录

热门文章

  1. Google的Java常用类库 Guava资料
  2. 看看世界各地牛人的彪悍乘车功夫
  3. SAP License:实例讲解SAP与金税接口
  4. python入门视频教程
  5. 华为MA5620、MA5626 ONU改交换机详细配置(小白级教程)
  6. 主机安全扫描入门-用Java封装Nmap
  7. 晕晕沉沉的一天,ISAPI_Rewrite 2.9破解版竟然是假的
  8. Python打包成exe.文件教程分享
  9. java--实现j2cache二级缓存
  10. 废掉一个人最隐蔽的方式,是让他忙到没时间成长