C与C++标准

#C-Language

C与C++标准:

其中,C和C++标准的正式版需要授权使用、而其草稿均为免费使用。

ISO标准查询:
http://www.open-std.org/
https://www.iso.org/obp/ui/#home

C++委员会开源草稿:
https://github.com/cplusplus/draft/tree/main/papers

C标准

C标准笔记:
C标准学习笔记

Traditional C

发布日期:

标准原文:
C Programming Language, First Edition, by Brian W. Kernighan, Dennis M. Ritchie. Prentice Hall PTR 1978

C89(ANSI C)

该标准随后被ISO采纳,称为国际标准(ISO/IEC 9899:1990)

C95

是对 C89 的一个修订和扩充,称为“C89 with Amendment 1”或 C95,严格说来并不是一个真正的标准。

C95 的主要改动:

  • 3个新标准头文件:iso646.h、wctype.h、wchar.h;
  • 一些新的标记(token)和宏(macro);
  • 一些新的 printf/scanf 系列函数的格式符;
  • 增加了大量的宽字符和多字节字符函数、常数和类型。

现在已不需要了解C95之前的C语言标准的具体内容。

C99

主要改动:

  • 复数(complex);
  • 整数(integer)类型扩展;
  • 变长数组;
  • Boolean 类型;
  • 非英语字符集的更好支持;
  • 浮点类型的更好支持;
  • 提供全部类型的数学函数;
  • 支持C++风格的注释(//)。

现已不需了解主流编译器对C99的支持情况。

C11

发布日期: 2011年

  1. 移除 gets 函数。

特性支持表:

C17

发布日期:2018年6月,也因此又名C18

C2x

预计将于2022年12月发布

C++标准