号外号外:无规矩不成方圆(4)
本文MISRA规则由嵌入式程序猿整理自网络,版权归原作者所有
不能使用三字母词
三字母词由2 个问号序列后跟1 个确定字符组成(如, ??- 代表“ ~”(非)符号,而??)代表“]”符号)。它们可能会对 2 个问号标记的其他使用造成意外的混淆,例如字符串“(Dateshould be in the form ??-??-??)”将不会表现为预期的那样,实际上它被编译器解释为“(Dateshould be in the form ~~)”
标识符(内部的和外部的)的有效字符不能多于 31。
ISO 标准要求在内部标识符之间前 31 个字符必须是不同的以保证可移植性。即使编译器支持,也不能超出这个限制。
ISO 标准要求外部标识符之间前 6 个字符必须是不同的(忽略大小写)以保证最佳的可移植性。然而这条限制相当严格并被认为不是必须的。本规则的意图是为了在一定程度上放宽ISO 标准的要求以适应当今的环境,但应当确保 31 个字符/大小写的有效性是可以由实现所支持的。
使用标识符名称要注意的一个相关问题是发生在名称之间只有一个字符或少数字符不同的情况,特别是名称比较长时,当名称间的区别很容易被误读时问题就比较显著,比如 1(数字 1)和 l( L 的小写)、0 和 O、 2 和 Z、 5 和 S,或者 n和 h。建议名称间的区别要显而易见。
具有内部作用域的标识符不应使用与具有外部作用域的标识符相同的名称,这会隐藏了外部标识符。
外部作用域和内部作用域的定义如下。文件范围内的标识符可以看做是具有最外部( outermost)的作用域;块范围内的标识符看做是具有更内部( more inner)的作用域;连续嵌套的块,其作用域更深入。本规则只是不允许一个第二深层( second inner)的定义隐藏其外层的定义,如果第二个定义没有隐藏第一个定义,那么就不算违反本规则。
其他跟代码相关的规则,可以在具体的工程中,打开MISRA规则验证分析代码时候,对应代码看规则,印象会比较深刻。在这里就不赘述了。建议大家查看最新的规则。这个系列到这里就结束了,欢迎各位的关注
号外号外:无规矩不成方圆(4)相关推荐
- 支付宝体验设计精髓. 02 无规矩不成方圆
02 无规矩不成方圆 -设计规范的建设 文/ 周建波.朱兰民 第1节 规矩成就方圆 孟子曰:离娄之明,公输子之巧,不以规矩,不能成方圆.-<孟子> 设计规范是用户体验的最低标准!-吴明 支 ...
- MBD建模规范 stateflow建模 无规矩不成方圆 规范建模行为 提升建模效率 。 主要包含模型接口界面及布局,模块的安全使用、预防易出错的建模模式
MBD建模规范& stateflow建模 无规矩不成方圆 规范建模行为 提升建模效率 . 主要包含模型接口界面及布局,模块的安全使用.预防易出错的建模模式.提高可测性.模型优化等多方面的内容, ...
- 无规矩不成方圆,代码规范到底有多重要?(附字节跳动必问的HashMap源码总结)
前言 代码规范是我们每个程序员要做的事,假设我们按照自己的喜好来写代码,那么很可能出现的问题就是我看不懂你的代码或者你看不懂我的代码,这样会给后续维护形成巨大的障碍.这个时候问题来了,如何让代码不分你 ...
- 无规矩不成方圆,代码规范到底有多重要?(附阿里最新Android开发代码规范手册)
前言 代码规范是我们每个程序员要做的事,假设我们按照自己的喜好来写代码,那么很可能出现的问题就是我看不懂你的代码或者你看不懂我的代码,这样会给后续维护形成巨大的障碍.这个时候问题来了,如何让代码不分你 ...
- springboot中接口实例化_无规矩不成方圆,聊一聊 Spring Boot 中 RESTful 接口设计规范...
在设计接口时,有很多因素要考虑,如接口的业务定位,接口的安全性,接口的可扩展性.接口的稳定性.接口的跨域性.接口的协议规则.接口的路径规则.接口单一原则.接口过滤和接口组合等诸多因素,本篇文章将简要分 ...
- 无规矩不成方圆——SQL Server 约束
数据库的功能是管理大量的数据.但凡需要管理的东西的数量巨大时,必定需要一定的限制或者规则.比如交通需要交通规则.民航需要空中交通管制.国家需要法律等等,假设把这些限制除去,天下必定大乱.在数据库中这种 ...
- 包机制(无规矩不成方圆)
导入所有的:
- 号外号外!博主公众号改名了。
号外,号外:博主公众号改名了,由原来的 测试江湖路 改名为 测试江湖驿站,需要了解更多airtest.jmeter.测试技术的,可以加公众号了解哦~~~
- 【号外号外:微软收购 .NET 的开源实现 Xamarin 项目的公司】
[首页小编:你好,关于博客园对Xamarin的报道确实一笔而过了,希望能不要把这篇文章移除首页呵呵,祝福帅气,聪明,敏捷,睿智的小编] 一个月后,微软开始免费Xamarin了....还要放开SDK.. ...
最新文章
- 数组-0~n-1 中缺失的数(查找不存在的数)
- 深度分析:基站+光通信+手机都用到了哪些美国芯片?有何替代?
- 【云计算】6_云数据库产品介绍
- 把数据保存到数据库附加表 `XX_addonarticle` 时出错,Duplicate entry 'X' for key 'PRIMARY'...
- SAP ABAP Netweaver和Hybris Commerce的开发license
- mysql 1005_MYSQL使用错误 MYSQL中ERROR 1005
- 怎么用python编写个apk_新手用tkinter写了一个APK提取工具
- 话题:什么是前端工程化?
- 杭电1754I Hate It 线段树与非线段树
- python面向对象属性_Python面向对象属性
- LeetCode_125_Python_验证回文串
- Linux查看网卡驱动|更新驱动
- C++编程-买卖股票的最佳时机
- OTN 设备基本组成介绍
- 填坑之路 DirectX11(二)使用 DirectXTex 读取 DDS 文件时报错解决方案
- T1 mapping的用途
- GPA计算(5.0分制)
- wordpress插件_9个最佳WordPress产品组合插件
- A. Chess Placing
- 动态规划统计正方形子矩阵