C语言跟C#有什么不一样的

作者&投稿:潜河 (若有异议请与网页底部的电邮联系)
c#跟c语言有什么区别~

原理上的区别:
c#和java类似,c#是一门半编译型半解释型语言,意思是:
A.cs源代码文件被编译器编译(编译、链接)成A.exe(A.obj、A.exe)文件,而文件A.exe中存放的并不是某一款真实CPU(比如intel的x86处理器、AMD的处理器)的机器指令,而存放的是可以一种虚拟处理器(即虚拟机,类似于java虚拟机,这里指的不是像vmware那样的虚拟机)的机器指令。当双击A.exe时,实际上系统是,让该虚拟机来解释A.exe中的指令,虚拟机将A.exe中的指令解释为当前真实CPU上的指令,并将解释后的指令在真实cpu上运行,以让A.exe运行。
从A.cs转化成A.exe是编译的过程,而虚拟机解释A.exe并在真实CPU上执行指令是解释的过程。
而C语言是一门纯粹的编译型语言,A.c被编译器编译成A.exe,而A.exe直接在真实CPU上运行,没有解释的过程。

语法上的区别:
c#语法实际上类似于java,也就是说处处都是引用类型(其实就是c语言中的指针,但不需要写星号)。
C语言除了指针类型,还有结构体。结构体的存在,就导致传参数时对象复制了。而C#中传参数时不会复制对象。
当然了c#是面向对象的,c语言是面向过程的。

区别:1.C语言、C++、C#准确的说,是三种计算机编程语言。
2.C面向过程,开发非托管程序,编译成exe是二进制可执行文件,不可跨平台。C++面向对象,开发托管和非托管程序,编译成exe是二进制可执行文件,不可跨平台。C#面向对象,开发托管程序,编译成exe是中间语言。
3.C语言既具有高级语言的特点,又具有汇编语言的特点。C语言的源代码基本上可以非常容易地对应到汇编代码,而且可以不需要什么运行时环境的支持。C++是一种静态数据类型检查的,支持多重编程范式的通用程序设计语言。
C#的特点就是:抽象层次高且基本只有一种(面向对象的),运行时支持丰富(垃圾回收等),类库丰富。
4.C的特点,简单容易编译,灵活贴近底层。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。

扩展资料:
计算机语言包括机器语言、汇编语言、高级语言。
机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。它是计算机的设计者通过计算机的硬件结构赋予计算机的操作功能,比如汇编语言(assembly language)。机器语言具有灵活、直接执行和速度快等特点。高级语言比较容易识记和理解,像C B语言等。
参考资料:计算机编程语言 百度百科
C语言 百度百科
c#语言 百度百科
C++ 百度百科

不同点有很多

1. 开发时间,先后出现顺序不同
C语言最早在1972年由Dennis M.Ritchie在贝尔实验室基于BCPL语言开发
而C#则由微软最早在2000发布的面对对象语言
2. 语法不同
虽然C#的语法中很多如表达式,函数,声明等语法和C类似,但C#还有很多现代化的、体现最新编译技术的语法,毕竟C的年纪比较大,而且C#的开发者众多

其次,最主要的还是C是面对过程的,而C#是面对对象的

3. 编译和执行方式不同
C的编译器一般将源码编译成机器代码,故其执行速度快,但就不方便嵌入一些如垃圾回收之类的功能(当然C今后也不太可能加入此项功能)

C#则编译成微软自家开发的一种中间代码IL,这也是为什么C#编译出来的程序要有被称作.Net framework的运行环境,其作用是将IL中间代码通过Just-In-Time的方式编译成底层机器代码再运行。这样虽然效率较C低,但可以有更多的运行时特性

其实,C和C#可以看作是两个完全不同的语言,其被开发的目的和方式也大相径庭

最大的区别,C语言编译后是变成机器语言直接运行在CPU上的,C#编译出来的ML是运行在一个叫CLR的类似虚拟机的东西上的。并不直接使用CPU。
C语言是一门非常基础的语言,提供了高效的目标程序和比较少的特性,比如面向对象的类,抽象,多态和继承都无法实现,而C#是一门纯面向对象语言,不仅强制要求类定义,并且全面支持面向对象的方法(抽象,多态和继承)。
C语言有指针类型(可以说是这门语言的精髓),对于计算机有深入了解的程序员可以使用指针进行各种“精妙”的操作,当然也伴随着很大的风险,比如指针异常导致的内存溢出。C#在标准代码中不允许使用指针,事实上绝大部分指针的操作都被C#良好的封装了,避免了内存溢出的风险。
另外C#由于遵守CLT定义并运行在CLR上,有良好的可移植性,只要目标机器安装了对应版本的.NET Frameword,C#程序就可以在那台机器上运行(虽然.NET目前主要在Windows上才有),而C编译的完成的程序会根据操作系统和CPU型号有一定的不兼容性,不过几乎所有的CPU+所有的操作系统上都有C的编译器,所以应用范围比C#还要广。
当然,普遍认为一个熟练的程序员使用C编译的程序效率要高于使用C#编译出来的。

c语言是面向过程的语言 c#是面向对象的(类似 java),另外 c# 写的程序是托管代码,必须要安装 .net framework 框架才能运行。c 生成的是非托管代码。

C语言是面向过程的程序设计语言
C++是面向对象的程序设计语言
C#是为.net量身定做的面向对象的程序设计语言
举个例子吧:
可以把C语言当作爷爷,则C++就是父亲,而C#和Java就是兄弟两!
建议你不要学C了,学习C++或C#都行,因为面向过程的程序设计语言和面向对象的程序设计语言有很大的不同,直接学习C++没有任何问题
再补充一下:学习C是跟本没有必要的,C++和C#都可以,不过C#比C++容易些,因为C#中没有指针这个东西了.

c语言是面向过程的语言 c#是面向对象的


c++与c语言的区别与联系
C语言与C++的区别 1、全新的程序程序思维,C语言是面向过程的,而C++是面向对象的。2、C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中;而C++对于大多数的函数都是有集成的很紧密,特别是C语言中没有的C++中的API是对Window系统的大多数API有机的组合,是一个集体。

C语言和C++语言的区别是什么?
c语言和c++有哪些区别 c是一个结构化语言,它的重点在于算法和数据结构。c程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。 c++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态...

C语言跟其他编程语言有什么不同,各有什么优缺点?
C语言跟别的语言比 是最基础的,学单片机就是要先好C语言,C语言|优缺点&结构特点 优点1. 简洁紧凑、灵活方便C语言一共只有32个关键字,9种控制语句,程序书写形式自由,主要用小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以像汇编语言一样对位、字节和地址进行...

什么叫c语言,c语言是什么意思?
是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发 1...

C语言跟JAVA相比哪个更好学,实用性更高,找工作更好
Java语言是一门面向对象的语言,比较年轻,设计JAVA语言的大师们对C++很熟悉,而C++又是从C语言扩充得来的,Java在很大的程度上参照了C++,不过也去掉了很多东西,比如说头文件、指针等等。不管是学什么高级语言,C语言都是基础,因为C语言是高级的低级语言,你学习Java之前肯定会先接触C。Java的很多东西...

c语言是计算机的什么语言是高级还是低级?
c语言是计算机的高级语言。高级语言相对于机器语言(machine language,是一种指令集的体系。这种指令集,称机器码(machine code),是电脑的CPU可直接解读的数据)而言。是高度封装了的编程语言,与低级语言相对。它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字、不...

c语言是计算机的什么语言是高级还是低级?
c语言是计算机的高级语言。高级语言主要是相对于汇编语言而言的,基本脱离了机器的硬件系统,用人们更易理解的方式编写程序。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言,能以简易的方式编译、处理低级存储器。C语言提供了许多低级处理的功能,但仍然保持着跨平台的...

C语言是什么意思?
C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上...

C语言和其他高级语言的最大的区别是什么
C语言和其他高级语言的最大的区别就是C语言是要操作内存的。在C语言中,定义了4个内存区间:代码区、全局变量和静态变量区、局部变量区即栈区、动态存储区,即堆区。后由系统释放。程序代码区存放函数体的二进制代码。内存分为动态内存和静态内存。堆栈是两种数据结构。堆栈都是一种数据项按序排列的...

C语言与C++语言的区别在哪?
C语言是结构化和模块化的面向过程的语言,C++语言是面向对象的程序设计语言。C++语言是C语言的超集,也就是说学会了C++,你其实已经把C语言学会了。至于说有什么区别,应该说是编程思想的区别吧,C是基于过程的,强调的是程序的功能,以函数(功能)为中心。C++是面向对象的,强调程序的分层、分类,以抽象为基础,进行对象的...

郧西县13812128712: C语言跟C#有什么不一样的 -
微唐复方: 不同点有很多1. 开发时间,先后出现顺序不同C语言最早在1972年由Dennis M.Ritchie在贝尔实验室基于BCPL语言开发而C#则由微软最早在2000发布的面对对象语言 2. 语法不同虽然C#的语法中很多如表达式,函数,声明等语法和C类似,...

郧西县13812128712: C#,C语言的区别!~ -
微唐复方: 从整体上说,C语言是面向过程的语言,而C#是面向对象的语言.这是二者最根本的区别.当然,C#强大的库功能也是C不能与之比的.具体这样说吧:语法基本e69da5e6ba90e79fa5e9819331333332643234没有区别,个人感觉首先c#不必对...

郧西县13812128712: C#和C语言有什么区别? -
微唐复方: C#是面向对象的语言,比较易学易上手,c是面向过程的语言,要求逻辑性很强,比较难学,但是效率上比较的话,c开发的程序效率要比C#高

郧西县13812128712: c语言与c#语言有什么区别? -
微唐复方: C语言面向过程,C#和JAVA都是面向对象的,但是其具体细节还是过程化的,还是要用C培养出来的算法和数据结构的思想来解决,因此C是基础.C#和JAVA差不多,是微软为和SUN公司争夺市场开发的语言,主要用于.NET平台的开发

郧西县13812128712: C语言与C#的区别? -
微唐复方: C语言是一种计算机程序设计语言,属高级语言范畴.它既具有高级语言的特点,又具有汇编语言的特点.它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序,代码清晰精简,十分灵活.C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言.它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承).C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言.

郧西县13812128712: c语言与c#有什么不同点 -
微唐复方: c是过程语言,而C#是面向对象语言,两个是有根本的差别的,基本上可以说没有联系,之所以叫C#主要是因为历史的原因,c适合做芯片级的开发,底层应用的开发,而C#适合做桌面级开发和浏览器级的开发

郧西县13812128712: C语言与C#有什么区别 -
微唐复方: c和c++的区别就是在c的基础上增加类等面向对象编程的内容,c# 也叫c+ + + + 就是在c++的基础上又增加了一些内容.

郧西县13812128712: c#和c语言有什么区别? -
微唐复方: 两种不同的语言.编程思想不同,c语言是面向过程 ,c#是面向对象.当然语法也不一样.c语言比较灵活,一般用于编写系统,驱动之类的.c#多用于企业应用.太多的不同了,c语言强大,但语法简单,入门容易,但熟练比较难.所以一般学校都从c语言开始教.C#容易上手.简单易用.

郧西县13812128712: c语言和c#有什么不同,求指教???? -
微唐复方: C++ 是在C的基础上改进后的一种编程语言,主要是增添了许多新的功能,难度也比C大,和C一样侧重于计算机底层操作,也就是系统软件的开发. C#是在C++的基础上再一次改进后的编程语言,相比C++而言难度有所减小(微软是这么说的...

郧西县13812128712: c#与c语言的区别?两者主要是开发什么的? -
微唐复方: 虽然都带C,但是是两种语言,C语言是低级语言,主要是用于教学和考试,还有编写一些低层的程序需要用到. C#语言是微软公司.NET平台专门推出的语言,是.NET支持的高级语言之一,和C语言完全不一样,也没有可比性.c和c#是两种编程语言.c#由微软推出,基于.net,从C语言衍生来的,比c简单易用,类似java.“#”代表英文单词“Sharp”是锋利、尖锐的意思.发音“夏普”.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网