C语言标准
C语言出现后,出现了多个版本,不同版本之间的C语言各有差异,为了让C语言健壮的发展下去,美国国家标准协会组织了由硬件厂商、软件设计师、编译器设计师等成员成立的标准C委员会,建立了通用的C语言标准。第一版C语言标准在1989年颁布,称为C89。从1989年至今,陆续颁布了多版本C语言标准,下面介绍C语言的标准。
1、C89标准
1989年美国国家标准协会(ANSI)通过的C语言标准ANSI X3.159-1989被称为C89,人们习惯称之为“ANSI C”。1990年国际标准化组织ISO接受并采纳C89作为国际标准ISO/IEC9899:1990,该标准被称为ISO C,简称“C90”。由于C90采用的是C89标准,因此C89和C90指的是同一个版本。
2、 C99标准
1999年ISO(国际标准化组织)和IEC(国际电工委员会)正式发布了ISO/IEC:1999,简称C99。C99引入了许多新特性,如内联函数、变量声明可以不放在函数开头、支持变长数组、初始化结构体允许对特定的元素赋值等。本书内容将基于C99标准讲解。
3、C11标准
2011年ISO(国际标准化组织)和IEC(国际电工委员会)正式发布C语言标准第三版草案(N1570),称为“ISO/IEC98992011”,简称“C11”。C11提高了C语言对C++的兼容性,并增加了一些新的特性,这些新特性包括泛型宏、多线程、静态断言、原子操作等。