职业教育论文-浅析C与C#.doc_第1页
职业教育论文-浅析C与C#.doc_第2页
职业教育论文-浅析C与C#.doc_第3页
职业教育论文-浅析C与C#.doc_第4页
职业教育论文-浅析C与C#.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

职业教育论文-浅析C与C#摘要:C#是微软公司发布的一种面向对象的、运行于.NETFramework环境之上的高级程序设计语言,是微软公司的最新成果。从时间顺序上说,最早出现的是C,然后是C+,最后是C#。C+是为了解决软件危机而引入面向对象的概念,C#是为了实现平台统一和JAVA争夺市场下的产物。最后是C#。C+是为了解决软件危机而引入面向对象的概念,C#是为了实现平台统一和JAVA争夺市场下的产物。C是完全面向过程的程序设计语言,而C+可认为是半个面向对象,JAVA从C+发展而来,吸取了C+精华,C#更是JAVA的超级版,C#是完全面向对象的。文章对C和C#之间的联系及区别作了简单阐述。关键词:C、C#、Java;面向对象程序设计;NET环境Abstract:C-sharpisonekindofhigh-levelprogramminglanguagewhichMicrosoftCorporationissued,isMicrosoftCorporationsnewestachievement.Fromthetimesequence,AppearswhatmostearlyisC,thenisC+,finallyisC-sharp.Ciscompletelytheprocedure-orientedtheprogramminglanguage,C-sharpistheJAVAsuperversion,C-sharpiscompletelyobject-oriented.ThispaperhasmadethesimpleelaborationtobetweenCandtheC-sharprelationandthedifference.Keywords:C;C-sharp;JAVA;object-orientedprogramming;.NETenvironmenC#(读作“C-sharp”)是微软公司发布的一种面向对象的、运行于.NETFramework环境之上的高级程序设计语言。其在PDC上登台亮相,是微软公司研究员AndersHejlsberg的最新成果。很多人会提出这样的一个问题,那就是C与C#有无区别呢?答案是肯定的,那二者的区别又在哪里呢,说到二者的区别,就必须先谈谈二者之间的联系。1C与C#的联系有一种有趣的说法“C添两个+号,就是C+再添加两个+号,就成了c#了(四个+就成了#)”,还有一种说法“C是爷爷,C+是爸爸,C#是孙子”,从这些形象的比喻中,我们应该能体会到从C到C#的变化过程。从时间顺序上说,最早出现的是C,然后是C+,最后是C#。C+是为了解决软件危机而引入面向对象的概念,C#是为了实现平台统一和JAVA争夺市场下的产物。从性能上说,C的效率最高,C+次之,C#最低。C是完全面向过程的结构化编程语言,它的特点是语言体积小、效率高、语言灵活,给程序的限制小,而且可以方便地对低层进行操作,所以它非常适合于开发操作系统、驱动程序,嵌入式等对速度要求较高的程序。C+是向下完全兼容C的,C+与C相比最显著的变化就是增加了面向对象的成分,也就是增加了类的概念,因为它的增加使软件开发可以比较容易地描述人类的思维,使得软件的开发和维护变得相对简单,直接降低了软件的成本,但因为C+是面向对象的语言,这本身就制约它的速度,所以C+适合开发那些大型项目,现代的大部分语言都或多或少的借鉴了C+和C的某些特性。C#被包括在.NET平台下,是一个面向对象、面向网络、面向组件的语言,有很多地方与JAVA非常相似,擅长于开发网络方面的程序。因此,更确切地说,C#是一个需.NET平台支持的开发语言,单纯看C#没有意义,需要了解.NET平台的开发知识。从编译角度看,C/C+编译生成目标文件都是可被CPU直接理解的机器码,而C#编译后生成的是MSIL(MicrosoftIntermediateLanguage),这种语言不能直接被CPU执行,而是依靠.NETframework翻译(Just-in-timeCompiling)成opcode后再送到CPU执行的。因此,这也是上面为什么说C#运行效率最低的缘故。(平均意义上的效率低,不是绝对的)。C#可认为是C的升级加强版。C是一种优良的面向过程的程序设计语言,而且得到了普遍的推广。但是随着面向对象编程思想的兴起,C已经不能满足要求,因此继而出现了C+、Java、C#等。C#是Microsoft公司设计的一种编程语言。C#和Java都是在语法上借用了C的一些形式而已。跟C/C+没有多少联系了。C#松散地基于C/C+,并且有很多方面和Java类似。Microsoft是这样描述C#的:“C#是从C和C+派生来的一种简单、现代、面向对象和类型安全的编程语言。C#主要是从C/C+编程语言家族移植过来的,因此,C和C+的程序员会马上熟悉它。C#试图结合VisualBasic的快速开发能力和C+的强大灵活的能力。”2C与C#的区别了解了C与C#之间的联系,我们就可以讨论一下二者的区别了。C是一种面向过程的程序设计语言,而C#是一种面向对象的程序设计语言。二者的区别体现在很多方面,接下来就分别对它们各自的特点做个描述,从中大家可体会它们之间的不同之处。2.1关于CC是面向过程编程的语言,主要用来编写操作系统、单片机程序、底层操作软件(与硬件关系较大的),它适合作为系统描述语言,即可用来编写系统软件,也可用来编写应用软件。虽然语法相对繁琐,但对硬件的底层编程和对内存的管理的灵活性方面C是其他高级语言所不可及的。C是结构化编程的典型代表,其用作程序开发时主要是结构化模块,函数的应用和编程。在其原来结构化开发的基础上增加类,就变成了C+,所以可以说C+是带类的C语言。C语言的应用非常广泛,UINX系统中90%的代码是用C语言开发的,其余是汇编等。无论是windows还是Linux及Uinx以及MAC等操作系统,都可用C来开发程序。C的不足之处就是:C非常的灵活,高级的不易掌握,据说微软培养一名C程序员需要2年的时间。另外,如果单用C语言开发视窗系统,不用C+是很困难的。2.2关于C#C#是从C/C+演化而来的类JAVA的语言,完全面向对象(大家常说的VB、Delphi只是基于对象)。C#是专门针对在.NETFramework上开发应用程序所设计的新程序语言,C#有点类似C+,或者说更像JAVA,因此它有着易用、弹性大的特点,不但提供完整的面向对象支持,在程序语法的执行效率上也比VisualBasic快,所以说C#是为.NET平台量身定做也不为过。C#程序设计语言学习容易,内部封装了巨量的类库,用户可以直接拿来使用,无论用它开发win程序还是web程序,都十分方便,里有强大的IDE环境,这是比JAVA好的特点之一。C#代表了编程语言的发展方向,有资料称微软技术专家认定下一代操作系统的80%代码都是用C#来写。在C#里面基本上放弃了C的指针。语法基本没有区别,个人感觉首先C#不必对指针进行太多的研究,然后是可移植性等,其他的区别相当大,可以说不是一个方向的。C#与C的语法基本没有区别,但稍有不同,下面就举个例子说明一下分别在C和C#中声明数组:intarray15;/在C中声明一维数组intarray1=newint5;/在C#中声明一维数组intarray234;/在C中声明二维数组int,array2=newint3,4;/在C#中声明二维数组intarray3=newint3;/在C#中声明不规则数组可见,在C#中声明数组的方式和C中的声明方式是不一样的,在C#中声明数组时,方括号必须跟在类型后面,而不是标识符后面,若将放在标识符后是不合法的语法,另一细节是,C#中数组的大小不是其类型的一部分,而在C语言中它却是数组类型的一部分,C#还允许建立不规则数组。C#缺点是目前只能在.NET平台下,Windows操作系统上运行。另用它编写WinF

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论