MISRA-C-:2004指南:C语言在关键系统中的使用指南
MISRA-C:2004 Guidelines for the use of the C language in critical systems中文版 MISRA-C:2004是Motor Industry Software Reliability Association(汽车工业软件可靠性协会)发布的一份指南,旨在为critical systems(关键系统)中C语言的使用提供指导。该指南的主要目标是提高软件的可靠性、安全性和可维护性。 背景——C的使用和问题 C语言是汽车工业中最常用的编程语言之一,广泛应用于汽车电子控制单元(ECU)的开发中。然而,C语言也存在一些问题,如语言的不安全性、指针操作的复杂性、数组边界检查的缺乏等,这些问题可能会导致软件的可靠性和安全性下降。 MISRA-C的发布说明 MISRA-C是为critical systems开发的C语言编程指南,旨在提供一份统一的编程标准,确保软件的可靠性、安全性和可维护性。MISRA-C的发布说明主要介绍了该指南的目标、范围和使用方法。 MISRA-C的目标 MISRA-C的主要目标是提供一份统一的编程标准,确保软件的可靠性、安全性和可维护性。该指南适用于critical systems的开发,旨在提高软件的可靠性、安全性和可维护性。 规则简介 MISRA-C中包含了多条规则,旨在指导开发人员编写高质量的C语言代码。这些规则涵盖了C语言的各个方面,如环境、语言扩展、文档、字符集、标识符、类型、常量、声明与定义、初始化、数值类型转换、指针类型转换、表达式、控制语句表达式、控制流、switch语句、函数、指针和数组、结构与联合、预处理指令、标准库、运行时错误等。 规则的分类 MISRA-C中的规则可以分为以下几类: * 环境相关规则:这些规则涵盖了C语言的环境相关问题,如编译器选项、头文件包含等。 * 语言扩展相关规则:这些规则涵盖了C语言的扩展特性,如变长数组、复杂的指针运算等。 * 文档相关规则:这些规则涵盖了C语言的文档问题,如注释、文档字符串等。 * 字符集相关规则:这些规则涵盖了C语言的字符集问题,如ASCII字符集、Unicode字符集等。 * 标识符相关规则:这些规则涵盖了C语言的标识符问题,如变量名、函数名等。 规则的组织 MISRA-C中的规则按照以下结构组织: * 规则编号:每条规则都有一个唯一的编号。 * 规则描述:每条规则都有一个详细的描述,说明该规则的目的、范围和使用方法。 * 规则示例:每条规则都提供了一个示例代码,展示如何正确地使用该规则。 规则的形式 MISRA-C中的规则可以是以下几种形式: * 语句式规则:这些规则是以语句的形式出现的,如“所有的指针都应该被初始化”。 * 表达式式规则:这些规则是以表达式的形式出现的,如“所有的数组索引都应该在合法的范围内”。 * 函数式规则:这些规则是以函数的形式出现的,如“所有的函数都应该有明确的返回类型”。 规则的范围 MISRA-C中的规则涵盖了C语言的各个方面,如环境、语言扩展、文档、字符集、标识符、类型、常量、声明与定义、初始化、数值类型转换、指针类型转换、表达式、控制语句表达式、控制流、switch语句、函数、指针和数组、结构与联合、预处理指令、标准库、运行时错误等。 MISRA-C的使用 MISRA-C可以在以下几个方面使用: * 软件工程环境:MISRA-C可以用于软件工程环境中,指导开发人员编写高质量的C语言代码。 * 编程语言和编码环境:MISRA-C可以用于编程语言和编码环境中,指导开发人员编写高质量的C语言代码。 *采用子集:MISRA-C可以用于采用子集中,指导开发人员编写高质量的C语言代码。 * 符合性声明:MISRA-C可以用于符合性声明中,指导开发人员编写高质量的C语言代码。 MISRA-C:2004是critical systems中C语言编程的指南,旨在提高软件的可靠性、安全性和可维护性。该指南涵盖了C语言的各个方面,提供了一份统一的编程标准,指导开发人员编写高质量的C语言代码。
![](https://csdnimg.cn/release/download_crawler_static/10365174/bge.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10365174/bgf.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10365174/bg10.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10365174/bg11.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10365174/bg12.jpg)
剩余85页未读,继续阅读
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/935f25b5224c44238de07f235d866dd8_lukunn.jpg!1)
- 粉丝: 0
- 资源: 8
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 贵州煤矿矿井水分类与处理策略:悬浮物、酸性与非酸性
- 醛固酮增多症肾上腺静脉采样对比:ACTH后LR-CAV的最优评估
- 开源云连接传感器监控平台:农业土壤湿度远程监测
- 母婴用品企业年度生产计划线性规划优化模型:实证与应用
- 井下智能变电站:Rogowski线圈电流检测系统的研发与性能验证
- 霍州矿区煤巷稳定性分析及支护策略
- ARM嵌入式系统远程软件更新方案:基于TFTP协议
- 煤炭选煤中汞分布规律与洗选脱汞效果
- 提升码垛机器人性能:拉格朗日动力学模型与滑模模糊控制的应用
- 增强现实技术提升学前手写教学:设计与开发案例
- 不规则工作面沉陷三角剖分算法提升与应用
- 卡尔曼滤波在瞬变电磁干扰压制中的应用研究
- 煤矿安全能力研究:理论与系统构建
- LonWorks总线技术在斜巷运输车辆定位与跑车防护中的应用
- 神东煤炭集团高效煤粉锅炉系统:节能环保新实践
- Ti/SnO2+Sb2Ox/PbO2电极分形维数与电催化性能研究
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)