文件名称:C++问题-oracle12c数据库中文资料大全
文件大小:594KB
文件格式:PDF
更新时间:2024-07-09 22:10:17
汽车 软件
3.1 基本的语言问题 MISRA 指南[9](表 3)要求使用“标准化结构化语言的受限子集”。对 C 来说,这意味 着只能使用在 ISO 标准中定义的语言,因此排除了以下方面的使用: K&R C(由 Kernighan 和 Ritchie 编写的“The C Programming language”的第一版) C++ C 的私有扩展 3.2 未指出的问题 风格和代码度量问题在一定程度上是很个人化的。对任何一群人来说都很难赞成什么是 适当的,而要 MISRA 给出确定性的建议也是不合适的。重要的不是使用者采取了哪种确切的 风格或者特定的度量,而是使用者要定义风格指南和合适的度量与限制(见节 4.2.2 和 4.2.4)。 MISRA 协会的角色不是建议特定的供应商或工具强制执行所采取的约束。使用本文档的 用户在选择工具上是*的,鼓励供应商提供遵循规则的工具。本文档用户的负担是要声明 其工具充分地遵循了规则。 3.3 可应用性 本文档被设计为应用在汽车嵌入式系统的产品代码上。 根据 ISO 9899[2](节 5.1.2)中定义的执行环境,本文档的目标定在“自立(free-standing) 的环境”,尽管它也描述了库的问题,因为嵌入式编译器中经常也会用到一些标准库。 如果合适,本文档的大部分要求也可以应用在其他嵌入式领域。对主机系统(hosted system)的应用,本文档的要求不是必需的。 在进行编译器和静态工具的比较检测(benchmark)时也不需完全应用本文档规则,有时 在比较工具时有必要打破这些规则,以测量工具的响应。 3.4 预备知识 本文档不是要做为所涉主题的介绍和培训。而是认为读者熟悉 ISO C 编程语言标准和相 关工具,并读过了主要的引用文档。同样假设读者已经接受了适当的培训并胜任 C 程序员工 作。 3.5 C++问题 C++不同于 C 语言,本文档的范围不包含它,也不试图讲解 C++对于编写安全相关系统 的适合性与否。然而对于 C++编译器和代码的使用方面应该给出以下说明。 C++不仅仅是 C 的超集(即增加多余的 C 特性)。在 C 和 C++中有少数特殊构造具有不同 的解释。而且有效的 C 代码可以包含一些在 C++中是保留字的标识符。基于这些原因,由 C