码迷,mamicode.com
首页 > 其他好文 > 详细

MISRA C:2012 8 Rules 8.1 A Standard C environment

时间:2019-09-04 00:16:52      阅读:77      评论:0      收藏:0      [点我收藏+]

标签:standard   bsp   限制   code   and   标准   col   color   表示   

8.1 

程序不得违反标准C语法和约束,不得超出实现的转换限制

0232  十六进制转义序列的值在“unsigned char”类型中无法表示。

int ia = \x4142;                    /* Message 0232 */

char 字符常量只有1个Byte大小(不考虑宽字符常量),‘\x4142’ = 16706, 超过范围了。 0-255

十六进制转义序列的值不得超过unsigned char中可表示的值的范围.

char 类型用于存储字母和标点符号之类的字符,但是在技术实现上char却是整数类型,这是因为char类型实际存储的是整数而不是字符

char grade  = ‘A‘ ;

char grade = 65; // 这是一种不好的编程风格

令人奇怪的是,C将字符常量视为int类型而非char类型

 

MISRA C:2012 8 Rules 8.1 A Standard C environment

标签:standard   bsp   限制   code   and   标准   col   color   表示   

原文地址:https://www.cnblogs.com/focus-z/p/11456302.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!