C 是一门功能强大的专业化编程语言,深受也许编程爱好者和专业程序员的喜爱。
C 语言的起源
1972 年,贝尔实验室的丹尼斯·里奇(Dennis Ritch)和肯·汤普逊(Ken Thompson)在开发 UNIX 操作系统时设计了 C 语言。
选择 C 语言的理由
优点
-
设计特性
C 融合了计算机科学理论和实践的控制特性。可以让用户能轻松地完成自顶向下的规划、结构化编程和模块化设计。因此,用 C 语言编写的程序更易懂、更可靠。
-
高效性
C 充分利用了当前计算机的优势,因此 C 语言相对更紧凑,而且运行速度更快。C 语言具有通常是汇编语言才具有的微调控制能力,可以根据具体情况微调程序以获得最大运行速度或最有效地使用内存。
-
可移植性
C 语言是可移植方面的佼佼者,许多计算机体系结构都可以使用 C 编译器。
-
强大而灵活
C 语言功能强大且灵活。功能强大且灵活的 UNIX 操作系统,大部分是用 C 语言写的;许多语言的编译器和解释器都是用 C 语言编写的。
-
面向程序员
C 语言是为了满足程序员的需求而设计,程序员利用 C 可以访问硬件、操控内存中的位。且 C 语言有丰富的运算符,能让程序员简洁地表达自己的意图。
缺点
享受用 C 语言自由编程的乐趣,就必须承担更多的责任。
语言标准
-
K&R C
1978 年,布莱恩·柯林汉(Brian Kernighan)和丹尼斯·里奇(Dennis Ritchie)合著的 The C Programming Language(《C 语言程序设计》)第一版是公认的 C 标准,通常称之为 K&R C 或经典 C.
-
ANSI/ISO C
1983 年,美国国家标准协会(ANSI)组建了一个委员会(X3J11),开发了一套新标准,并与 1989 年正式公布。国际标准化组织于 1990 年采用了这套 C 标准(ISO C)。ANSI/ISO 标准的最终版本通常叫作 C89 或 C90。由于 ANSI 先公布 C 标准,因此业界人士通常使用 ANSI C。
委员会制定的指导原则中,最有趣的可能是:保持 C 的精神
- 信任程序员
- 不要妨碍程序员做需要做的事
- 保持语言精练简单
- 只提供一种方法执行一项操作
- 让程序运行更快,即使不能保证其可移植性
在最后一点上,标准委员会的用意是:作为实现,应该针对目标计算机来定义最合适的某特定操作,而不是强加一个抽象、统一的定义。
-
C99
-
C11