什么是C语言!

[复制链接]
查看11 | 回复6 | 2020-1-13 12:29:29 | 显示全部楼层 |阅读模式
回复

使用道具 举报

千问 | 2020-1-13 12:29:29 | 显示全部楼层
C语言是目前世界上流行,使用最广泛的高级程序设计语言. C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的.C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画它是数值计算的高级语言.常用的编译软件有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++, Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++, Lccwin32 C Compiler 3.1,Microsoft C,High C,等等...... 随着微型计算机的日益普及, 出现了许多C语言版本.由于没有统一的标准,使得这些C语言之间出现了一些不一致的地方.为了改变这种情况,美国国家标准研究所(ANSI)为C语言制定了一套ANSI标准, 成为现行的C语言标准 3.C语言的主要特点 .C语言发展迅速, 而且成为最受欢迎的语言之一, 主要因为它具有强大的功能. 许多著名的系统软件, 如DBASE Ⅲ PLUS,DBASE Ⅳ 都是由C 语言编写的.用C语言加上一些汇编语言子程序, 就更能显示C语言的优势了,象PC- DOS ,WORDSTAR等就是用这种方法编写的.C语言的特点1. 简洁紧凑,灵活方便C语言一共只有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示.它把高级语言的基本结构和语句与低级语言的实用性结合起来. C 语言可以象汇编语言一样对位,字节和地址进行操作, 而这三者是计算机最基本的工作单元.2. 运算符丰富 C的运算符包含的范围很广泛,共有种34个运算符.C语言把括号,赋值,强制类型转换等都作为运算符处理.从而使C的运算类型极其丰富表达式类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算.3. 数据结构丰富C的数据类型有:整型,实型,字符型,数组类型,指针类型,结构体类型,共用体类型等.能用来实现各种复杂的数据类型的运算.并引入了指针概念,使程序效率更高.另外C语言具有强大的图形功能, 支持多种显示器和驱动器.且计算功能,逻辑判断功能强大. 4. C是结构式语言结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立.这种结构化方式可使程序层次清晰, 便于使用,维护以及调试.C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环,条件语句控制程序流向,从而使程序完全结构化. 5. C语法限制不太严格,程序设计自由度大 一般的高级语言语法检查比较严,能够检查出几乎所有的语法错误.而C语言允许程序编写者有较大的自由度.6. C语言允许直接访问物理地址,可以直接对硬件进行操作因此既具有高级语言的功能,又具有低级语言的许多功能,能够象汇编语言一样对位,字节和地址进行操作,而这三者是计算机最基本的工作单元,可以用来写系统软件. 7. C语言程序生成代码质量高,程序执行效率高 一般只比汇编程序生成的目标代码效率低10へ20%.8. C语言适用范围大,可移植性好C语言有一个突出的优点就是适合于多种操作系统, 如DOS,UNIX,也适用于多种机型.C#和.NET平台的概貌2000年6月,微软发布C#语言和.NET平台.C#语言是一种强类型的,面向对象的语言,它具有语法简单,表达力强的特点,而.NET平台则是构成微软的".NET计划"的基石.NET平台的核心包括两方面,一方面就是著名的通用语言运行机(CommonLanguage Runtime),虽然这个名词起得晦涩了点,不过大家可以拿它和Java的虚拟机来作比较,二者完成的任务大致相同;另一方面就是一大堆通用函数库,这些库函数可以被多种语言调用,并且通过编译都产生一种共同的中间语言(IntermediateLanguage),这种语言也可以拿Java的字节码来类比,虽然完成的方式有些不一样. 二者都编译成跨平台的,跨语言的代码,并且代码只能在一个受控制的环境中运行自动回收垃圾内存,并且消除了指针(在C#中可以使用指针,不过必须注明unsafe关键字)都不需要头文件,所有的代码都被"包(package)"限制在某个范围内,并且因为没有头文件,所以消除了类定义的循环依赖所有的类都是从对象派生出来,并且必须使用New关键字分配内存用对象加锁的方式来支持多线程都具有接口(interface)的概念任何变量均在使用前进行初始化;不能使用整数来返回到if条件语句中,必须使用布尔值;"Try"模块后可以有"finally" ;几种常用开发工具的比较跨平台特性 VB:无 ★ C++ Builder/Dephi:WINDOWS家族,Linux ★★★ VC:无 ★ JAVA:所有能够运行JAVA虚拟机的操作系统 ★★★★面向对象特性 VB:差 ★ C++ Builder/Dephi:很好 ★★★★ VC:一般 ★★ JAVA:非常好 ★★★★★ 开发效率 VB:较高 ★★★ C++ Builder/Dephi:高 ★★★★ VC:低 ★ JAVA:高 ★★★★ 代码执行效率 VB:一般 ★★ C++ Builder/Dephi:很高 ★★★★★ VC:很高 ★★★★★ JAVA:低 ★易学程度 VB:非常好 ★★★★★ C++ Builder/Dephi:好 ★★★ VC:不好 ★ JAVA:不好 ★使用人数 VB:很多 ★★★★★ C++ Builder/Dephi:较多 ★★★ VC:多 ★★★★ JAVA:不多 ★厂商财力 VB:非常强大 ★★★★★ C++ Builder/Dephi:一般 ★★ VC:非常强大 ★★★★★ JAVA:强大 ★★★★发展潜力 VB:差 ★ C++ Builder/Dephi:一般 ★★ VC:好 ★★★ JAVA:非常好 ★★★★★VB:是新人开发与系统无关的综合应用程序的首选;容易使用和厂商财力很强是其仅有的两点优势 C++ Builder/Dephi:是唯一一套能够同时适用于开发数据库应用,网络及 Web应用,分布式应用,可重用组件,系统软件,驱动程序,多媒体及游戏 等所有软件的高效率开发环境;VCL源码基于Object Pascal是C++ Builder 唯一的缺憾,基础语言不够通用和开发系统软件功能不足是Dephi仅有的 两点不足 VC:从功能上讲除了跨平台应用外什么都可开发;从开发效率角度讲只局 限于 开发windows系统应用,可重用组件及驱动程序 JAVA:适用于开发除了系统软件,驱动程序,高性能实时系统,大规模图 像 处理以外所有的应用 综合评价: VB:46 C++ Builder/Dephi:67/61 VC:55 JAVA:59如果您想学习编程,却又不知从何入手,那么您不妨看看下面的几种学习方案,可能会给您一些启示吧!方案一 Basic语言 & Visual Basic优点(1)Basic 简单易学,很容易上手.(2)Visual Basic 提供了强大的可视化编程能力,可以让你轻松地做出漂亮的程序.(3)众多的控件让编程变得象垒积木一样简单.(4)Visual Basic 的全部汉化让我们这些见了English就头大的人喜不自禁.缺点(1)Visual Basic 不是真正的面向对象的开发文具.(2)Visual Basic 的数据类型太少,而且不支持指针,这使得它的表达能力很有限. (3)Visual Basic 不是真正的编译型语言,它产生的最终代码不是可执行的,是一种伪代码.它需要一个动态链接库去解释执行,这使得Visual Basic 的编译速度大大变慢.综述:方案一适合初涉编程的朋友,它对学习者的要求不高,几乎每个人都可以在一个比较短的时间里学会vB编程,并用VB 做出自己的作品.对于那些把编程当做游戏的朋友来说,VB 是您最佳的选择.方案二 Pascal语言 & Delphi优点(1)Pascal语言结构严谨,可以很好地培养一个人的编程思想.(2)Delphi是一门真正的面向对象的开发工具,并且是完全的可视化.(3)Delphi使用了真编译,可以让你的代码编译成为可执行的文件,而且编译速度非常快.(4)Delphi具有强大的数据库开发能力,可以让你轻松地开发数据库.缺点Delphi几乎可以说是完美的,只是Pascal语言的过于严谨让人感觉有点烦.综述: 方案二比较适合那些具有一定编程基础并且学过Pascal语言的朋友.方案三 C语言 & Visual C++优点(1)C语言灵活性好,效率高,可以接触到软件开发比较底层的东西.(2)微软的MFC库博大精深,学会它可以让随心所欲地进行编程. (3)VC是微软制作的产品,与操作系统的结合更加紧密.缺点对使用者的要求比较高,既要具备丰富的C语言编程经验,又要具有一定的WINDOWS编程基础,它的过于专业使得一般的编程爱好者学习起来会有不小的困难.综述: VC是程序员用的东西.如果你是一个永不满足的人,而且可以在编程上投入很大的精力和时间,那么学习VC你一定不会后悔的.方案四 C++语言 & C++ Builder优点(1)C++语言的优点全部得以继承.(2)完全的可是化.(3)极强的兼容性,支持OWL,VCL和MFC三大类库.(4)编译速度非常快.综述:有人认为C++ Builder 是最好的编程工具.它既保持了C++语言编程的优点,又做到了完全的可视化.
回复

使用道具 举报

千问 | 2020-1-13 12:29:29 | 显示全部楼层
C语言是国际上广泛流行的、很有发展前途的计算机高级语言。它适合作为系统描述语言,即可用来编写系统软件,也可用来编写应用软件。
早期的操作系统等系统软件主要是用汇编语言编写的(包括 UNIX操作系统在内)。由于汇编语言依赖于计算机硬件,程序的可读性和可移植性都比较差。为了提高可读性和可移植性,最好改用高级语言,但一般的高级语言难以实现汇编语言的某些功能(汇编语言可以直接对硬件进行操作),例如:对内存地址的操作、位操作等)。人们设想能否找到一种既具有一般高级语言特性,又具有低级语言特性的语言,集它们的优点于一身。于是,C语言就在这种情况下应运而生了。
C语言是在B语言的基础上发展起来的,它的根源可以追溯到ALGOL 60。 1960年出现的ALGOL 60是一种面向问题的高级语言,它离硬件比较远,不宜用来编写系统程序。1963年英国的剑桥大学推出了CPL(CombinedProgram- ming 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.Thom- pson和D.M.ritchie两人合作把UNIX的90%以上用 C改写(UNIX第5版。原来的 UNIX操作系统是1969年由美国的贝尔实验室的 K.Thompson和D.M.Ritchie开发成功的,是用汇编语言写的)。
后来,C语言多次作了改进,但主要还是在贝尔实验室内部使用。直到1- 975年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 Lan- guage》,这本书中介绍的C语言成为后来广泛使用的C语言版本的基础,它被称为标准C。1983年,美国国家标准化协会(ANSI)根据C语言问世以来各种版本对C的发展和扩充 ,制定了新的标准,称为ANSI C。ANSI C比原来的标准C有了很大的发展。K&R在1988年修改了他们的经典著作《The C Progra- mming Language》 ,按照ANSI C的标准重新写了该书。1987年,ANSI C又公布了新标准--87 ANSI C 。目前流行的C编译系统都是以它为基础的。
回复

使用道具 举报

千问 | 2020-1-13 12:29:29 | 显示全部楼层
这是本人经过2个小时在网上查找,再经过自已核对,才得出以下关于"什么是C语言"的最佳答案.C语言是目前世界上流行、使用非常广泛的高级程序设计语言。 C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。 C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画它是数值计算的高级语言。 常用的编译软件有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++ ,Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++ ,Lccwin32 C Compiler 3.1,Microsoft C,High C,TurboC等等......
回复

使用道具 举报

千问 | 2020-1-13 12:29:29 | 显示全部楼层
c语言是应用广泛的一种高级程序设计语言.一种结构化程序设计语言.不知道你学没学习过程序设计语言?!我感觉所谓结构化就是它的设计基本思想:顺序结构,选择结构,和循环结构.让我说其实这就是人和机器的之间一种语言.你把自己想要做的事按照约定好的语法语句告诉计算机,它也在约定的方式把这件事情做出来了。咱们要学习的就是这种语法和语句,而不必要知道计算机内部是如何句转化的.介于高级语言和低级语言间的一种高级编程语言 具体发展特征参照参考资料:http://www1.nttvu.edu.cn/ntddnew/wskt/my/C/zs/zs11.htm

已赞过已踩过<
回复

使用道具 举报

千问 | 2020-1-13 12:29:29 | 显示全部楼层
http://baike.baidu.com/view/1219.html?wtp=tt说的很详细
回复

使用道具 举报

千问 | 2020-1-13 12:29:29 | 显示全部楼层
这个问题得用欧姆定律来解决
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行