近期在学习c#编程基础,而之前有了解过c语言,这不禁让我疑惑:c语言与c++、c#有什么区别呢?
经过查询资料,我总结出他们之间的不同:
C/C++/C#准确的说,是三种语言。
C语言既具有高级语言的特点,又具有汇编语言的特点。C面向过程,开发非托管程序,编译成exe是二进制可执行文件,不可跨平台。C语言的源代码基本上可以非常容易地对应到汇编代码,而且可以不需要什么运行时环境的支持。C的特点,简单容易编译,灵活贴近底层。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。
C++它是一种使用非常广泛的计算机编程语言。C++面向对象,开发托管和非托管程序,编译成exe是二进制可执行文件,不可跨平台。C++是一种静态数据类型检查的,支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。
C#是微软公司发布的一种面向对象的、运行于.NETFramework之上的高级程序设计语言。C#面向对象,开发托管程序,编译成exe是中间语言,需要在。C#的特点就是:抽象层次高且基本只有一种(面向对象的),运行时支持丰富(垃圾回收等),类库丰富。所以它就是好学,易用,同时兼顾运行效率,尽量优化。说起这个,并不是说越高级的语言就越慢,运行时性能跟很多东西有关。NET平台上进行二次动态编译,之后才能执行,可跨平台。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETwindows网络框架的主角。