什么是C语言 C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。 它由美国贝尔实验室的DennisM.Ritchie于年推出,年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。C语言是年由美国的DennisRitchie设计发明的,并首次在UNIX操作系统的DECPDP-11计算机上使用。它由早期的编程语言BCPL(BasicCombinedProgrammingLanguage)发展演变而来,在年,ATT贝尔实验室的KenThompson根据BCPL语言设计出较先进的并取名为B的语言,最后导致了C语言的问世。而B语言之前还有A语言,取名自世界上第一位女程序员Ada(艾达)。随着微型计算机的日益普及,出现了许多C语言版本。由于没有统一的标准,使得这些C语言之间出现了一些不一致的地方。为了改变这种情况,美国国家标准研究所(ANSI)为C语言制定了一套ANSI标准,成为现行的C语言标准。注:国际标准化组织ISO也制定的C语言的标准,被很多编译器所采用,如:GCC等。C语言是世界上最流行、使用最广泛的高级程序设计语言之一。 在操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,以前有许多大型应用软件都是用C语言编写的(由于面向对象编程技术的出现,大型软件转由C++、JAVA、C#再配合C语言开发;C语言在面对大型的软件开发时,会显得有些吃力)C语言绘图能力强,具有可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。 C语言之父丹尼斯·里奇,C语言之父,UNIX之父。年与布莱恩·科尔尼干(BrianW.Kernighan)一起出版了名著《C程序设计语言(TheCProgrammingLanguage)》,此书已翻译成多种语言,成为C语言方面最权威的教材之一。年10月9日,丹尼斯-里奇去世,享年70岁。丹尼斯·里奇,全称丹尼斯·麦卡利斯泰尔·里奇。美国计算机科学家,对C语言和其他编程语言、Multics和Unix等操作系统的发展作出了巨大贡献。里奇在哈佛大学学习物理学和应用数学毕业,年他进入贝尔实验室,年他与肯·汤普逊一起获得了图灵奖。理由是他们“研究发展了通用的操作系统理论,尤其是实现了UNIX操作系统”。肯·汤普逊和丹尼斯·里奇年两人为发展C语言和Unix操作系统一起获得了美国国家技术奖章。在里奇的成长历程中,有两个人对他的影响最大,一个是他父亲,而另一个是他的挚友,同为UNIX发明人的肯·汤普逊。尤其是后者。有人问过丹尼斯,他的偶像是谁,不论在计算机领域还是其他领域?他说:我不是在英雄熏陶下成长起来的。很显然,对我职业生涯影响最大的人物是肯·汤普逊。UNIX大部分是他的工作,同样也是C语言的前辈,同样Plan9系统的大部分工作也是他做的。并且在这其间Ken做了第一个计算机象棋大师。里奇身上有很多可贵的品格:首先,他对所做的事十分有兴趣。比如创造出Unix的初衷并非为了挣钱,事实上刚开始是为了省钱,或者将他们的游戏装到一个更省钱的机子里边。第二,跳出舒适区工作非常有必要。里奇原本是一个物理学家和数学家,但是,他却成了最具传奇的程序员。很显然,他的专业背景为他研发出C语言或者Unix起了很大帮助,正如里奇所言:“要不惧工作在一个陌生的领域里。”如果里奇花了数十年的时间在晦涩的数学上,或许Unix就会胎死腹中。第三,要有创新思维。Unix在贝尔实验室是幸运的,那里资金充足、不缺员工,他才有条件与他的朋友按照自己的时间安排来研发他们想要的东西。最后,要懂得分享。许多企业都喜欢保密,将自己的核心技术藏匿起来,这在里奇看来都是不成功的。基本特性1、C是高级语言:它是把高级语言的基本结构和语句与低级语言的实用性结合起来的工作单元。2、C是结构式语言:结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。3、C语言功能齐全:具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。4、C语言适用范围大:适合于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。C语言对编写需要硬件进行操作的场合,优于其它高级语言,有一些大型应用软件也是用C语言编写的。5、C语言应用指针:可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素。C++在这方面做了改进,在保留了指针操作的同时又增强了安全性,受到了一些用户的支持,但是,由于这些改进增加语言的复杂度,也为另一部分所诟病。Java则吸取了C++的教训,取消了指针操作,也取消了C++改进中一些备受争议的地方,在安全性和适合性方面均取得良好的效果,但其本身解释在虚拟机中运行,运行效率低于C++/C。一般而言,C,C++,java被视为同一系的语言,它们长期占据着程序使用榜的前三名。6、C语言文件由数据序列组成:可以构成二进制文件或文本文件常用的C语言IDE(集成开发环境)有MicrosoftVisualC++、Dev-C++、Code::Blocks、BorlandC++Builder、Wat北京治疗白癜风费用白癜风药物治疗
|