一致性

来自cppreference.com
< c‎ | language

一致性( conformance )有三重定义:

  • 严格一致程序 - 仅使用良定义的语言构造,即拥有单一行为的构造。它不包含未指定、未定义或实现定义的行为,且不超过任何最小实现极限。
  • 一致程序 - 可接受到一致实现。
  • 一致实现 - 一致的有宿主实现应当接受任何严格一致程序。一致的独立实现,应当接任何将库子句(子句 7 )中指定的特性使用限制到标准头文件 <float.h> 、 <iso646.h> 、 <limits.h> 、 <stdalign.h> 、 <stdarg.h> 、 <stdbool.h> 、 <stddef.h> 、 <stdint.h> 及 <stdnoreturn.h> 中的严格一致程序。一致实现可拥有扩展(包含额外的库函数),只要它们不改变任何严格一致程序的行为。

[编辑] 解释

标准不在翻译单元上定义任何最小实现极限。有宿主环境拥有操作系统;独立环境无操作系统。运行于有宿主环境中的程序可使用任何库子句(子句 7 )中描述的特性;运行于独立环境中的程序可使用子句 4 所要求的库特性子集。

[编辑] 引用

  • C11 standard (ISO/IEC 9899:2011):
  • 4 Conformance (p: 8-9)
  • C99 standard (ISO/IEC 9899:1999):
  • 4 Conformance (p: 7-8)
  • C89/C90 standard (ISO/IEC 9899:1990):
  • 1.7 Compliance