【背景】

之前就知道了有个C90和C99。

后来又在:

期间知道有C11。

现在去整理一下,关于C语言的版本方面的更详细的内容。

参考内容:

C语言版本历史

C语言主要有三个版本:

ANSI C==C89==C90

ANSI C standard==X3.159-1989

1989年批准通过;

1990年发布;

后被批准为ISO标准:ISO/IEC 9899:1990

常叫做:C89

偶尔被叫做:C90

GCC中指定此版本所用参数时,有三种写法:

-ansi

-std=c90

-std=iso9899:1990

此C90后来在1994年,1996年,先后发布过对应的勘误表;

AMD1==C94==C95

1995年,针对之前1900年发布的标准,发布了一个修订版;

添加了一个有向图(digraphs)和宏:__STDC_VERSION__

此标准,常被叫做:AMD1

有时候被叫做:C94或C95

GCC中指定此版本时所用参数:

-std=iso9899:199409

C99

1999年又发布了新标准:ISO/IEC 9899:1999

常被叫做:C99

此C99标准未完成之前的草案,被叫做:C9X

GCC中指定此版本时所用参数有两种写法:

-std=c99

-std=iso9899:1999

此C99后来在2001年,2004年和2007年,先后发布过对应的勘误表;

C11

2011年发布了新标准:ISO/IEC 9899:2011

GCC中指定此版本时所用参数有两种写法:

-std=c11

-std=iso9899:2011

此C11标准未完成之前的草案,被叫做:C1X

关于GCC中对于C的扩展

对于GCC来说,对于上述各个版本的C语言,都有一定的扩展(extension)

如果用上面列出来的那些-std参数的话,则会禁止,不使用这些扩展的。

如果想要在GCC中使用C扩展的话,所用的参数都是gnuXX类型的,分别是:

C90使用GCC的C扩展:-std=gnu90

C99使用GCC的C扩展:-std=gnu99

C11使用GCC的C扩展:-std=gnu11

当前C language dialect默认所用的参数是:-std=gnu90

但是当以后,GCC对于C99和C11支持程度真正完善后,则可能会换成对应的:-std=gnu99或-std=gnu11

C语言库函数实现类型

ISO的C语言标准,定义了对于C语言的两种实现:

支持C语言的所有库函数

支持C语言的基本库函数( + 各自版本对应的实现)

基本库函数包括:,,,

AMD1对应的是:

C99对应的是:,

C11对应的是:,

总结C语言的各种版本

C语言的各种版本

主版本

C89

AMD1

C99

C11

别名

C90

ANSI C

X3.159-1989

ISO/IEC 9899:1990

C94

C95

ISO/IEC 9899:1999

ISO/IEC 9899:2011

标准通过时间

1989年

标准发布时间

1990年

1995年

1999年

2011年

GCC使用此版本所用参数

-ansi

-std=c90

-std=iso9899:1990

-std=iso9899:199409

-std=c99

-std=iso9899:1999

-std=c11

-std=iso9899:2011

GCC使用此版本且带C扩展时所用参数

-std=gnu90

-std=gnu99

-std=gnu11

C语言实现时所对应函数库

如此,就很清晰明了了。

c语言c11标准 下载,【整理】C语言的各种版本:C89,AMD1,C99,C11相关推荐

  1. generic泛型c语言编程,_Generic关键字及其语法和应用(C11标准),C语言_Generic详解...

    对接触过面向对象程序设计的程序员来讲,相信各位对泛型编程并不陌生.在 C11 标准中,_Generic 关键字可以让 C 语言也如同 C++ 等面向对象程序设计语言一样,使其支持轻量级的泛型编程设计. ...

  2. 二级C语言学习宝典下载,二级C语言学习宝典

    二级C语言学习宝典app是一款专注于全国二级计算机等级C语言学习所开发的应用软件,它能够给你带来全新的功能板块,让你轻松掌握超多优质的考试训练,享受到手机端做题刷题的畅快体验,让你轻松备考,而且在该软 ...

  3. 二级c语言自学免费下载,二级C语言学习宝典

    二级C语言学习宝典是一款为用户朋友们打造的计算机学习助手app,这款二级C语言学习宝典能够帮助用户朋友们使用手机做题,提升自己的操作能力,有需要的朋友来西西下载使用吧! 二级C语言学习宝典的介绍: 计 ...

  4. 二级c语言学习软件,二级C语言学习app下载-二级C语言学习 安卓版v3.1.1-PC6安卓网...

    二级C语言学习app是一款专为想要学习c语言的朋友开发的手机应用,通过二级C语言学习app,我们随时随地都可以学习c语言了哟,二级C语言学习app非常的方便,有需要的赶紧来下载吧. 软件介绍 二级C语 ...

  5. C语言标准 C89/C90/C99/C11之间的区别

    C89.C90.ANSI C通常指的是同一个C语言标准.1989年,美国国家标准协会(ANSI)推出C语言和C标准库的标准. 该标准通常被称为ANSI C.由于该标准是1989年推出的,因此也被称为C ...

  6. c语言c11标准侯捷,C语言的C89、C99和C11标准(上)

    一.C99针对C89的改变 1.增加了restrict指针 通过restrict修饰指针,可以确保两个指针不能指向同样的内存空间. 如memcpy函数在C99标准下的定义为 void *memcpy( ...

  7. 欧框语言框架标准C2,CEFR欧洲语言共同参考框架

    http://www.v4.cc/News-3997660.html CEFR全称是Common European Framework of Reference for Languages,是由欧洲语 ...

  8. linux中文语言包rpm下载,centos中文语言包下载-centos中文语言包 fonts-chinese-3.02-12.el5.noarch.rpm下载__飞翔下载...

    centos中文语言包 fonts-chinese-3.02-12.el5.noarch.rpm,直接在目录下运行: rpm -ivh fonts-chinese-3.02-12.el5.noarch ...

  9. c语言新标准1983年,C语言的标准

    (1)K&R C 开始的很多年,C语言没有国际标准,只有一个事实标准--1978年Brian Kemighan和Dennis Ritchie编写的<C程序设计语言>(The C P ...

  10. c语言源程序的下载,编程(C语言源程序代码)

    计算机 C语言 已知 S=1+1/(1+2)+1/(1+2+3)+-+1/(1+2+3+-+N) ,当 N 的值为 50 时,求 S 的值. 要求:按四舍五入的方式精确到小数点后第四位. #inclu ...

最新文章

  1. pickle,json ;random,shelve
  2. 2019计算机统考word视频,2019年9月 全国计算机二级 MS Office (Word 美化文档)
  3. python3.72教程_python3教程_编程入门教程_牛客网
  4. 计算机操作系统安装实验报告,计算机操作系统实验报告.doc
  5. datatable 创建列赋值_Datatable 添加新列并赋值
  6. 数学 FZU 2074 Number of methods
  7. 前端学习(3323):高级设计说闭包
  8. 【HDU - 5094】 Maze (状态压缩+bfs)
  9. C11简洁之道:函数绑定
  10. Spring之控制反转(IOC)
  11. matplotlib绘制李萨如图(一) 静态2D李萨如图
  12. 根据城市的三字代码查询经纬度_中国国内机场三字码及经纬度
  13. 人民币大写金额转换算法
  14. keil 调试指针不跳转 0x00000000 0000 MOVS r0,r0 解决方案
  15. linux下查看vcf文件格式,plink格式文件与vcf格式文件相互转化
  16. win10任务栏卡死桌面正常的解决方法
  17. 计算机对团队合作的重要性,市计算机:团队协作,共同奋斗
  18. 好用的SQL工具盘点:从学习到工作总有一款适合你
  19. 被泄露的数据正在被非法价值化
  20. 拼音翻译成阿拉伯数字

热门文章

  1. html转换成pdf后变模糊,使用html2canvas.js和jspdf.js把网页转换成 pdf 不清晰怎么解决...
  2. javaweb解决get请求中文乱码问题
  3. 农产品加工进销存单_实用必看!手把手教你制作进销存出入库表格
  4. 知富柜台系统服务器,商业银行柜面无纸化安全解决方案
  5. python英文参考文献格式_英文论文参考文献标准格式
  6. 调用服务器直接打印文件,使用 LP 打印命令设置直接连接的打印机
  7. 计算机 科研进度安排,研究计划进度安排及预期目标-浙江大学现代教务管理系统.doc...
  8. 干货分享!手机中不可或缺的5个APP神器
  9. 宿舍管理系统【C语言建工程及多文件练习】
  10. WPS表格 JSA 学习笔记