C 语言都有哪些标准版本?

C89、C90、C99 和 C11 是 C 语言的不同标准版本,它们代表了 C 语言在不同时间点的语言规范和标准。以下是它们的详细含义:

1. C89 (ANSI C):

  • 全称:ANSI X3.159-1989
  • 发布年份:1989年
  • 背景:这是美国国家标准协会 (ANSI) 制定的 C 语言标准,也被称为“ANSI C”。它是基于早期的 K&R C(Kernighan and Ritchie C)语言的一个标准化版本。
  • 特性:定义了 C 语言的核心语法、数据类型和标准库函数等基本要素。

2. C90 (ISO C):

  • 全称:ISO/IEC 9899:1990
  • 发布年份:1990年
  • 背景:这是国际标准化组织 (ISO) 发布的 C 语言标准,基本上是对 C89 标准的复制,除了加入了一些额外的细节。
  • 特性:与 C89 标准几乎完全相同,唯一的区别是 C90 标准对 C89 标准做了一些小的改进和澄清。

3. C99:

  • 全称:ISO/IEC 9899:1999
  • 发布年份:1999年
  • 背景:这是 C 语言的第三个标准版本,引入了许多新的特性和改进。
  • 特性:包括对内联函数的支持、可变长度数组、复杂数类型、以及对 C 语言标准库的扩展等。

4. C11:

  • 全称:ISO/IEC 9899:2011
  • 发布年份:2011年
  • 背景:这是 C 语言的第四个标准版本,进一步改进了语言的功能和标准库。
  • 特性:包括对多线程支持(通过 _Atomic_Thread_local 关键字)、对Unicode字符的支持、改进了对编译器诊断信息的支持等。

5. C18:

  • 全称:ISO/IEC 9899:2018
  • 发布年份:2018年
  • 背景:这是对 C11 标准的修订,主要集中在修正错误和澄清规范上,并没有引入重大新特性。
  • 特性:C18 主要对 C11 标准中的一些小问题进行了修正,并没有增加新的语言特性或库功能。

6. C2X:

  • 全称:ISO/IEC 9899:202x(计划中的名称)
  • 背景:C2X 是一个正在进行中的标准化过程,旨在对 C 语言进行进一步的改进和更新,计划成为 C11 的下一版本。
  • 特性:虽然 C2X 还在开发中,但已经计划引入一些新的特性,例如改进的泛型编程支持、扩展的标准库功能等。

总的来说,C 语言的标准化进程旨在不断改进和扩展语言的功能,同时保持向后兼容性。各个版本之间的变化和更新是为了提高语言的表达能力、程序员的开发效率和程序的可靠性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

音频金钟小赵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值