C语言标准演化历史

在这里插入图片描述
C语言的诞生:C语言和Unix的开发者是同一人,名字叫丹尼斯•里奇(Dennis MacAlistair Ritchie), 2011年10月12日(北京时间为10月13日)去世,享年70岁。
1967年,26岁的丹尼斯•里奇进入贝尔实验室开发 Unix,并于 1969 年圣诞节前推出第一个试运行版本。这个时候的 Unix 是用汇编语言写的。为了提高通用性和开发效率,丹尼斯•里奇决定发明一种新的编程语言——C语言。紧接着,丹尼斯•里奇就用C语言改写了 Unix 上的C语言编译器,他的同事汤姆森则使用C语言重写了 Unix,使它成为一种通用性强、移植简单的操作系统,从此开创了计算机编程史上的新篇章,C语言也成为了操作系统专用语言
版本沿革:
ANSI C,C89、C90、C11通常指的是同一个C语言标准的不同版本。
C89: 1989年,美国国家标准协会(American National Standards Institute,简称 ANSI)推出C语言和C标准库的标准。该标准通常被称为ANSI C。由于该标准是1989年推出的,因此也被称为C89。
C90: 时隔一年,国际标准协会ISO参照ANSI标准,推出一模一样的C语言和C标准库标准,由于该标准是1990年提出的,因此被称为C90标准。ISO官方名称:ISO/IEC 9899: 1990, 9899 是C语言在 ISO 标准中的代号, 冒号后面的 1990 表示当前修订好的版本是在 1990 年发布的
C99: C语言的标准化委员会在1999年,正式发布了 ISO/IEC 9899: 1999,简称为 C99 标准。
C99标准增加了一些新的特性,包括内联函数(inline functions)、可变长度的数组、灵活的数组成员(用于结构体)、复合字面量、指定成员的初始化器、对IEEE754浮点数的改进、支持不定参数个数的宏定义,在数据类型上还增加了 long long int 以及复数类型。但是并不是所有的编译器都支持这些新的特性,具体支持力度要参考你使用的编译器。而且在实际开发过程中,新的特性对我们帮助并不是完全必要的,所以一般使用较少。开发过程中,非必要情况也建议尽量少用。
C11: 2011年,C语言标准委员会正式发布了 ISO/IEC 9899: 2011,简称为 C11 标准。该标准增加了一些新的特性,比如:字节对齐说明符、泛型机制(generic selection)、对多线程的支持、静态断言、原子操作以及对 Unicode 的支持。
C语言标准参考文档:
1.ANSI C89中文版本:
链接:https://pan.baidu.com/s/1giI2oShXTQtFreR6zOhWyA
提取码:ffs1
2.C99 标准英文版:
链接:https://pan.baidu.com/s/1isQauXeM6OqhBK-i2i5xMQ
提取码:vnwz
3. keil编译器用户手册中文版本:
链接:https://pan.baidu.com/s/1suQvZBihQBTV-dNs5-HRmg
提取码:jtdg

发布了13 篇原创文章 · 获赞 7 · 访问量 5421

猜你喜欢

转载自blog.csdn.net/huangbinvip/article/details/104636576