POSIX 提到了 cc 还是只提到了 c99?

POSIX 提到了 cc 还是只提到了 c99?

我知道最新版本的 POSIX 指定应(可选)存在并调用符合 C99 的编译器c99。类似地,旧版本的 POSIX 用于指定c89作为“C 语言开发实用程序”的一部分存在的可选命令。

然而,我很难找到任何参考cc。这个命令是在 POSIX 标准中的某个地方提到的还是只是一个约定?

答案1

最初的 POSIX 1003.1(1988 年发布)指定了一个cc实用程序。 Single Unix 规范第 2 版 (1997) 包括ccc89。该名称c89被引入为 C 的标准方言。该名称cc被保留,但标记为遗留并声明为未指定的 C 方言。许多供应商提供的编译器默认为凯瑞C(即 ANSI C 之前的版本),名称为cc.您可能会注意到,这cc是强制性的,而c89它是 C 语言开发选项的一部分。通常,C 编译器的名称cc只能真正编译内核驱动程序,并且商业 unice 经常为适当的 C 编译器收取额外费用。

POSIX 1003.1-2001(单 Unix v3)指定c99指定而不是c89, 使用更新的 C 标准方言。您可以看到草稿中留下的一些编辑痕迹,cc其中也包含实用程序,但cc已从规范中删除。 POSIX 1003.1-2008 (Single Unix v4) 又刚刚有了c99

相关内容