MISRA2004 学习笔记(1)

Misra 2.1  Assmbly Language shall be encapsulated and isolated 汇编语言应当单独的被隔离和封装

                  由于汇编语言依赖于CPU和编译器,如果将用汇编语言编写的代码被独立封装,可以大大的提高代码的可移植性。

 

Misra 2.2  Source code shall only use /* ...... */ style comments. 源代码只能采用/*...... */风格的注视。

                  C90不允许使用 // ...... 风格的注释,而C99支持。 一些编译器不支持 //......风格的注释。

                  所以不使用//......风格的注释可以大大提高代码的可移植性

 

Misra 2.3 不允许在注释中使用字符串/* 

                  C是不支持注释嵌套的。但一些编译器对注释嵌套进行了扩展支持。考虑到代码的移植性,不允许使用注释嵌套。

 

Misra 2.4 代码不允许被注释掉。

 

不用的代码不要用注释的方式将其删除,而应该用条件编译(#if, #ifdef)的方法将其禁用(注释掉)。
由于C不支持注释嵌套,如果用注释的方式来禁用代码,由于代码中可能有注释,所以可能会发生注释嵌套。

错误例子
void func_NG(void){

  Int cnt = 5;  /* 计数器的定义及初始化 */
/*
  while (cnt > 0){  /* 循环 */
    ……
  }
*/
}

正确例子
void func_NG(void){

  Int cnt = 5;  /* 计数器的定义及初始化 */
#if 0
  while (cnt > 0){  /* 循环 */
    ……
  }
#endif
}

           

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值