Skip to content

C语言入门教程

本章节主要介绍C语言的背景以及发展历程。

C语言具有高可移植性、效率高、语法紧凑简洁,但是自由度和简洁往往不可兼得,在自由度高的目标下,程序员需要承担更多的责任。

K&R C

C语言发展之初,并没有所谓的C标准。1987年,布莱恩·柯林汉(Brian Kernighan)和丹尼斯·里奇(Dennis Ritchie)合著的The C Programming Language(《C语言程序设计》)第1版是公认的C标准,通常称之为K&R C 或经典C。

C89

1989年,C语言被美国国家标准协会(ANSI)标准化,编号为ANSI X3.159-1989。这个版本又称为C89。标准化的一个目的是扩展K&R C,增加了一些新特性。

C99

在ANSI的标准确立后,C语言的规范在一段时间内没有大的变动,然而C++在自己的标准化建立过程中继续发展壮大。这个标准引出了1999年ISO 9899:1999的发表。它通常被称为C99。C99被ANSI于2000年3月采用。

C11

2011年12月8日,ISO正式发布了新的C语言的新标准C11(之前被称为C1X),官方名称为ISO/IEC 9899:2011。新的标准提高了对C++的兼容性,并增加了一些新的特性。这些新特性包括泛型、多线程、带边界检查的函数、匿名结构等

C18

C18没有引入新的语言特性,只对C11进行了补充和修正。

C2X

C2x引入了一些新特性。目前可以确定的是,C2x标准将加入符合IEEE标准的十进制浮点数,这使得计算机能够精确地储存浮点数。

INFO

  • C忽略空白行,但是我们经常使用它使代码具有更好的可读性
  • 每行的结尾都需要用分号;表示结束
  • 指针==物理地址