编译器支持1989、1999 和 2011 版本的C语言以及 2003 版本的 C++ 语言。编译器中的 C 和 C++ 语言特征是按照下述 ISO 标准实现的:
- ISO 标准 C:C 编译器支持 989、1999 和 2011 版本的C 语言。
- C89。使用 --c89 选项编译会使编译器符合 ISO/IEC 9899:1990 C 标准,该标准先前被批准为 ANSI X3.159-1989。“C89”和“C90”指的是同一种编程语言。本文档中使用了“C89”。
- C99。使用 --c99 选项编译会使编译器符合 ISO/IEC 9899:1999 C 标准。
- C11。使用 --c11 选项编译会使编译器符合 ISO/IEC 9899:2011 C 标准。
Kernighan 和 Ritchie 的《C 程序设计语言》(K&R) 第二版中也介绍了 C 语言。 - ISO 标准 C++:编译器使用 C++03 版本的 C++ 标准。请参阅 C++ 标准 ISO/IEC 14882:2003。 Ellis 和 Stroustrup 的《C++ 参考手册注解》(ARM) 中也介绍了该语言,但该语言不是标准语言。有关不受支持的 C++ 特性的说明,请参阅节 6.2。
- ISO 标准运行时支持:编译器工具附带一个扩展的运行时库。除非另有说明,否则库函数符合 ISO C/C++ 库标准。该库包括标准输入和输出函数、字符串操作函数、动态内存分配函数、数据转换函数、计时函数、三角函数以及指数和双曲线函数。不包括信号处理函数,因为这些函数是特定于目标系统的。如需更多信息,请参阅 Chapter8。
如需了解命令行选项以选择代码所使用的 C 或 C++ 标准,请参阅 节 6.14 。