Sun Studio 12:C 用户指南

B.2.73 -xc99[= o]

-xc99 选项可控制编译器对根据 C99 标准(ISO/IEC 9899:1999,编程语言 - C)实现的功能的识别。

o 可以是包含以下内容的以逗号分隔的列表:

表 B–15 -xc99 标志

标志 

含义 

[no]_lib

[不] 启用同时在 1990 和 1999 C 标准中出现的例程的 1999 C 标准例程库语义。 

all

打开识别支持的 C99 语言功能,并启用同时在 1990 和 1999 C 标准中出现的例程的 1999 C 标准库语义。 

none

关闭识别支持的 C99 语言功能,并且不启用同时在 1990 和 1999 C 标准中出现的例程的 1999 C 标准库语义。 

如果未指定 -xc99,编译器缺省采用 -xc99=all,no_lib。如果指定了 -xc99,但没有指定任何值,该选项将设置为 -xc99=all


注 –

虽然编译器支持级别缺省为 C99 标准的语言功能,但 /usr/include 中的 Solaris 8 和 Solaris 9 操作系统提供的标准头文件不符合 1999 ISO/IEC C 标准。如果遇到错误消息,请尝试指定 -xc99=none,从而获取这些头文件的 1990 ISO/IEC C 标准行为。


出现在 1999 和 1999 C 标准中的 1990 C 标准例程库语义不可用,因此无法在 Solaris 8 和 Solaris 9 软件中启用。在 Solaris 8 或 Solaris 9 软件上直接或间接指定 -xc99=lib 时,编译器会发出错误消息。