关注+星标公众号,不错过精彩内容!
Rule 2.1 (required):Assembly language shall be encapsulated and isolated.
Rule 2.1 (强制):会汇编语言必须被封装并隔离。有时候为了提高效率,需要在代码中嵌入简单的汇编语言指令,例如启用和禁用中断。MISRA建议通过使用宏或者汇编函数来实现。
Rule 2.2 (required):Source code shall only use /* … */ style comments.
Rule 2.2 (强制):代码应该使用/* … */ 类型注释。MISRA-2004,要求比较高,不允许使用//,但是在MISRA-2012中已经可以使用//
Rule 2.3 (required):The character sequence /* shall not be used within a comment.
Rule 2.3 (强制):/*字符不能出现在注释中
C语言不支持注释的嵌套,但是有些编译器支持嵌套,作为一种语言扩展。注释以/*开始,并一直持续到遇到第一个*/为止。这种方式容易出现意外BUG,参考以下代码,function()本应该被调用,但是被注释掉了。
/* comment test
function();
/* comment test */
Rule 2.4 (advisory):Sections of code should not be “commented out”.
Rule 2.4 (建议):代码不应该被注释掉,可以使用#if/#ifdef条件编译的方式去掉不需要的代码。C语言不支持注释的嵌套,使用/* … */注释代码,可能带来异常问题,如规则Rule 2.3描述。
推荐阅读:
MISRA-C:2004详解1——环境