当前位置:网站首页>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日完成。
参考
边栏推荐
- Anaconda3 安装cv2
- MySQL combat optimization expert 06 production experience: how does the production environment database of Internet companies conduct performance testing?
- [paper reading notes] - cryptographic analysis of short RSA secret exponents
- MySQL18-MySQL8其它新特性
- [after reading the series of must know] one of how to realize app automation without programming (preparation)
- ZABBIX introduction and installation
- 用于实时端到端文本识别的自适应Bezier曲线网络
- Solve the problem of remote connection to MySQL under Linux in Windows
- Time in TCP state_ The role of wait?
- Technology | diverse substrate formats
猜你喜欢
MySQL实战优化高手03 用一次数据更新流程,初步了解InnoDB存储引擎的架构设计
Isn't there anyone who doesn't know how to write mine sweeping games in C language
Mysql32 lock
用于实时端到端文本识别的自适应Bezier曲线网络
Ueeditor internationalization configuration, supporting Chinese and English switching
Database middleware_ MYCAT summary
PyTorch RNN 实战案例_MNIST手写字体识别
Security design verification of API interface: ticket, signature, timestamp
软件测试工程师必备之软技能:结构化思维
[unity] simulate jelly effect (with collision) -- tutorial on using jellysprites plug-in
随机推荐
A necessary soft skill for Software Test Engineers: structured thinking
MySQL 29 other database tuning strategies
MySQL27-索引優化與查詢優化
Good blog good material record link
MySQL combat optimization expert 03 uses a data update process to preliminarily understand the architecture design of InnoDB storage engine
MySQL30-事务基础知识
MySQL31-MySQL事务日志
评估方法的优缺点
MySQL29-数据库其它调优策略
MySQL combat optimization expert 06 production experience: how does the production environment database of Internet companies conduct performance testing?
MySQL combat optimization expert 02 in order to execute SQL statements, do you know what kind of architectural design MySQL uses?
Ueeditor internationalization configuration, supporting Chinese and English switching
MySQL23-存储引擎
February 13, 2022-3-middle order traversal of binary tree
Super detailed steps for pushing wechat official account H5 messages
How to build an interface automation testing framework?
Mysql34 other database logs
Global and Chinese market of operational amplifier 2022-2028: Research Report on technology, participants, trends, market size and share
What is the current situation of the game industry in the Internet world?
MySQL实战优化高手03 用一次数据更新流程,初步了解InnoDB存储引擎的架构设计