当前位置:网站首页>C语言标准的发展
C语言标准的发展
2022-07-06 09:11:00 【Alexxinlu】
团队博客: CSDN AI小组
c语言标准的发展主要分为以下几个阶段:
K&R C
1978年,丹尼斯·里奇(Dennis Ritchie)和布莱恩·科尔尼干(Brian Kernighan)出版了一本书,名叫《The C Programming Language》。这本书被C语言开发者们称为“K&R”,很多年来被当作C语言的非正式的标准说明。人们称这个版本的C语言为“K&R C”。
C89
为统一C语言版本,1983年美国国家标准局(American National Standards Institute,简称ANSI)成立了一个委员会,来制定C语言标准。1989年C语言标准被批准,被称为ANSI X3.159-1989 “Programming Language C”。这个版本的C语言标准通常被称为ANSI C。又由于这个版本是 89年完成制定的,因此也被称为C89。
C90
后来ANSI把这个标准提交到ISO(国际化标准组织),1990年被ISO采纳为国际标准,称为ISO C。又因为这个版本是1990年发布的,因此也被称为C90。所以ANSI C、ISO C、C89、C90这4个标准的内容其实是一样的。
C99
在ANSI C标准确立之后,C语言的规范在很长一段时间内都没有大的变动。1995年C程序设计语言工作组对C语言进行了一些修改,成为后来的1999年发布的ISO/IEC 9899:1999标准,通常被成为C99。但是各个公司对C99的支持所表现出来的兴趣不同。当GCC和其它一些商业编译器支持C99的大部分特性的时候,微软和Borland却似乎对此不感兴趣。
C11
在2011年12月,ANSI采纳了ISO/IEC 9899:2011标准,这个标准通常即C11。
C18
2018年6月发布的ISO/IEC 9899:2018标准,这个标准被称为C18,是目前最新的C语言编程标准,该标准主要是对C11进行了补充和修正,并没有引入新的语言特性。
C2x
下一个版本的C语言标准,预计将于2022年12月1日完成。
参考
边栏推荐
- In fact, the implementation of current limiting is not complicated
- MySQL底层的逻辑架构
- MySQL combat optimization expert 04 uses the execution process of update statements in the InnoDB storage engine to talk about what binlog is?
- MySQL36-数据库备份与恢复
- 解决在window中远程连接Linux下的MySQL
- Advantages and disadvantages of evaluation methods
- February 13, 2022-3-middle order traversal of binary tree
- Discriminant model: a discriminant model creation framework log linear model
- Mysql24 index data structure
- Chrome浏览器端跨域不能访问问题处理办法
猜你喜欢
Solve the problem of remote connection to MySQL under Linux in Windows
MySQL35-主从复制
如何搭建接口自动化测试框架?
MySQL30-事务基础知识
MySQL20-MySQL的数据目录
MySQL实战优化高手02 为了执行SQL语句,你知道MySQL用了什么样的架构设计吗?
[C language] deeply analyze the underlying principle of data storage
Mysql27 - Optimisation des index et des requêtes
MySQL combat optimization expert 12 what does the memory data structure buffer pool look like?
A necessary soft skill for Software Test Engineers: structured thinking
随机推荐
February 13, 2022 - Maximum subarray and
In fact, the implementation of current limiting is not complicated
百度百科数据爬取及内容分类识别
MySQL32-锁
Use JUnit unit test & transaction usage
Introduction tutorial of typescript (dark horse programmer of station B)
ByteTrack: Multi-Object Tracking by Associating Every Detection Box 论文阅读笔记()
MySQL26-性能分析工具的使用
MySQL29-数据库其它调优策略
What is the current situation of the game industry in the Internet world?
MySQL实战优化高手06 生产经验:互联网公司的生产环境数据库是如何进行性能测试的?
Windchill configure remote Oracle database connection
Opencv uses freetype to display Chinese
Global and Chinese market of transfer switches 2022-2028: Research Report on technology, participants, trends, market size and share
MySQL24-索引的数据结构
MySQL21-用戶與權限管理
Record the first JDBC
Unicode decodeerror: 'UTF-8' codec can't decode byte 0xd0 in position 0 successfully resolved
Global and Chinese market of thermal mixers 2022-2028: Research Report on technology, participants, trends, market size and share
Complete web login process through filter