C语言历史

来源:互联网 发布:淘宝美工好找工作吗 编辑:程序博客网 时间:2024/06/16 08:54


C语言是国际上广泛流行的计算机高级语言,既可用来写系统软件,也可用来写应用软件。 C语言是在B语言的基础上发展起来的,它的根源可以追溯到ALGOL 60。1960年出现的ALGOL 60是一种面向问题的高级语言,它离硬件比较远,不宜用来编写系统程序。1963年英国的剑桥大学推出了CPL (combined programming language)语言。CPL语言在ALGOL 60的基础上接近硬件一些,但规模比较大,难以实现。1967年英国剑桥大学的Matin Richards对CPL语言做了简化,推出了BCPL (basic combined programming language) 语言。1970年美国贝尔实验室的Ken Thompson 以BCPL语言为基础, 又做了进一步简化, 设计出了很简单的而且很接近硬件的B语言 (取BCPL的第一个字母), 并用B语言写了第一个UNIX操作系统,在PDP7上实现。1971年在PDP11/20上实现了B语言,并写了UNIX操作系统。但B语言过于简单,功能有限。 1972年至1973年间,贝尔实验室的D.M.Ritchie 在B语言的基础上设计出了C语言(取BCPL的第二个字母)。C语言既保持了BCPL和B语言的优点(精练,接近硬件),又克服了它们的缺点(过于简单,数据无类型等)。最初的C语言只是为描述和实现UNIX操作系统提供一种工作语言而设计的。1973年,K.Thompson和D.M.Ritchie两人合作把UNIX的90%以上用C改写,即UNIX第5版。原来的UNIX 操作系统是1969年由美国的贝尔实验室的K.Thompson和D.M.Ritchie开发成功的,是用汇编语言写的。 1972年至1973年间,贝尔实验室的D.M.Ritchie 在B语言的基础上设计出了C语言(取BCPL的第二个字母)。C语言既保持了BCPL和B语言的优点(精练,接近硬件),又克服了它们的缺点(过于简单,数据无类型等)。最初的C语言只是为描述和实现UNIX操作系统提供一种工作语言而设计的。1973年,K.Thompson和D.M.Ritchie两人合作把UNIX的90%以上用C改写,即UNIX第5版。原来的UNIX 操作系统是1969年由美国的贝尔实验室的K.Thompson和D.M.Ritchie开发成功的,是用汇编语言写的。 
后来,C语言多次做了改进,但主要还是在贝尔实验室内部使用。直到1975年UNIX第6版公布后,C语言的突出优点才引起人们的普遍注意。1977年出现了不依赖于具体机器的C语言编译文本《可移植C语言编译程序》,使C移植到其他机器时所需做的工作大大简化了,这也推动了UNIX操作系统迅速地在各种机器上实现。例如VAX、 AT&T等计算机系统都相继开发了UNIX。随着UNIX的日益广泛使用,C语言也迅速得到推广。C语言和UNIX可以说是一对孪生兄弟,在发展过程中相辅相成。1978年以后,C语言已先后移植到大、中、小、微型机上,已独立于UNIX和PDP了。现在C语言已风靡全世界,成为世界上应用最广泛的几种计算机语言之一。以1978年发表的UNIX第7版中的C编译程序为基础,Brian W.Kernighan和Dennis M.Ritchie (合称K&R)合著了影响深远的名著《The C Programming Language》,这本书中介绍的C语言成为后来广泛使用的C语言版本的基础,它被称为标准C。1983年,美国国家标准化协会(ANSI)根据C语言问世以来各种版本对C的发展和扩充,制定了新的标准,称为ANSI C。 ANSI C比原来的标准C有了很大的发展。K & R在1988年修改了他们的经典著作《The C Programming Language》,按照 ANSI C 标准重新写了该书。1987年,ANSI又公布了新标准——87 ANSIC。
1990年,国际标准化组织ISO(International Standard Organization) 接受87 ANSI C为ISO C 的标准(ISO 9899—1990)。目前流行的C编译系统都是以它为基础的。本书的叙述基本上以ANSI C 为基础。目前广泛流行的各种版本C语言编译系统虽然基本部分是相同的,但也有一些不同。在微型机上使用的有Microsoft C、 Turbo C、 Quick C、BORLAND C等,它们的不同版本又略有差异。因此,读者应了解所用的计算机系统所配置的C编译系统的特点和规定.