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

 我来答
大沈他次苹0B
2010-11-23 · TA获得超过7354个赞
知道大有可为答主
回答量:3059
采纳率:100%
帮助的人:181万
展开全部
最大的区别,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#编译出来的。
创作者zUzVB1Sl31
2022-07-15 · 编程类资料、英语学习资料
创作者zUzVB1Sl31
采纳数:1331 获赞数:5975

向TA提问 私信TA
展开全部
其实我们十一局开发环境来区分的。纯种的C语言编辑用得最多的是Trubo C、VC++也可以,很多人搞不清C、C++、GCC、C#区别。其实C语言还真就不是C++、C#那么回事,C++可以用VC6.0,但是后来局限VC6.0的类库太少,C++分成了2个方向。
一个方向是QT,可以在windows、Lunix都能开发,其实是两个版本的QT,用的是Clang,配置信号槽的方式。
另一个是Visaul Studio C++,完全继承自VC6.0,还加入了托管代码,其实跟VB.NET、C#同化了的,因为在一个开发环境,都是基于Framework。C#是VS主打语言,代码书写精 炼,已经很成熟了。
GCC那是lunix上使用的语言。
从整体发展来看从C到C++、C#,逐步演变成一种过程化编程,以前的C我们要写基层代码,基于操作系统层面基础实现,现在C++、C#可不一定了,在VS里面Nuget搜索一下,大量的开源库,直接安装,属性给一下就能使用。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式