关于C和C语言 C++的区别

作者&投稿:端木之 (若有异议请与网页底部的电邮联系)
C语言和C++有什么区别么??~

vc,全称为Microsoft Visual C++,Microsoft Visual C++(简称Visual C++、MSVC、VC++6.0或VC6.0)是Microsoft公司推出的以C++语言为基础的开发Windows环境程序,面向对象的可视化集成编程系统。
一、性质不同
1、Visual C++:Microsoft Visual C++(简称Visual C++、MSVC、VC++6.0或VC6.0)是Microsoft公司推出的以C++语言为基础的开发Windows环境程序,面向对象的可视化集成编程系统。
2、C++:C++是C语言的继承,进行C语言的过程化程序设计。
二、作用不同
1、Visual C++:适合用来编写各种复杂软件。
2、C++:可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。

三、特点不同
1、Visual C++:有高级语言简单易用的特性,又可以完成汇编语言才能做的许多工作。
2、C++:支持数据封装和数据隐藏;支持继承和重用;支持多态性。
参考资料来源:
百度百科-visualc++
百度百科-C++

一、主体不同
1、C语言:是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。
2、C++:是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计。
二、优势不同
1、C语言:能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。
2、C++:不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。


三、特点不同
1、C语言:提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。
2、C++:在C++中,类是支持数据封装的工具,对象则是数据封装的实现。C++通过建立用户定义类支持数据封装和数据隐藏。

参考资料来源:百度百科-c语言
参考资料来源:百度百科-C++

对于大部分编程的人来说学c语言应该都从vc的(当然也有用tc的),但我觉得这里面有很大一部分朋友并不知道其实你一直用c++的编译器去编c和运行c语言的代码。当然c++是支持绝大部分的c的,但它们是不同的,之所以你能用那些编写和运行c语言代码没有发现有什么不对之处(其实你偶尔也会发现有时你的c代码运行时会怪怪的。)

1) 在C语言中,初始化一个字符数组的方式很容易产生错误,就是数组很可能没有足
够的空间存放结尾的NULL字符.C++于对此此了一些改进、像char b[3] ="Bob"这样的表达式
被认为是一个错误,但它在C语言中却是合法的。
2) 类型转换既可以写成像float(i)这样看上去更顺眼的形式,也可以写成(float)i这样
稍显怪异的C语言风格的形式.
C++允许一个常量整数来定义数组的人小
connst int size=128;
char a[size];
这在C++中是允许的但在C语言中却是错误的.
3)c++ 声明可以穿插于语句之间.在C语言中,一个语句块中所有的声明都必须放在所有
语句的前面.C++去掉了达个专横的限制,做得非常好当然这种做法也会引起与C语言的
不兼容,那为什么不进行得彻底一些,为恐怖的C语言声明语法提供一种更简单的替代方案?
4)在C++中,用户代码不能调用mian()函数,但在C语言中却是允许的(不过这种情
况极为罕见)
5)完整的函教原型声明在C++中是必须的,但在C语言中却没这么严格.
6)在C++中由typedef定义的名字不能与已有的结构标签冲突,但在C语言中却是充
许的(它们分属不同的名命空间).
7)当void*指针赋值给另一个类型的指针时,C++规定必须进行强制类型转换,但在C
语言中却无必要。
8)在C++中,声明可以出现在语句可以出现的任何地方.在C语言中的代码块中,所
有的声明必须出现在所有语句的前面.
9)在C++,字符常量的类型是char,但在C语言中,它们的类型是inL也就是说,
在C++中,sizeof('a')的结果是1.而在c语言中,它的值要大一些。
#(读做 "C sharp")是微软公司在去年六月发布的一种新的编程语言,并定于在微软职业开发者论坛(PDC)上登台亮相.C#是微软公司研究员Anders Hejlsberg的最新成果.C#看起来与Java有着惊人的相似;它包括了诸如单一继承,界面,与Java几乎同样的语法,和编译成中间代码再运行的过程.但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角.

微软c#语言定义主要是从C和C++继承而来的,而且语言中的许多元素也反映了这一点.C#在设计者从C++继承的可选选项方面比Java要广泛一些(比如说structs),它还增加了自己新的特点(比方说源代码版本定义).但它还太不成熟,不可能挤垮Java.C#还需要进化成一种开发者能够接受和采用的语言.而微软当前为它的这种新语言大造声势也是值得注意的.目前大家的反应是:"这是对Java的反击."

C#更象Java一些,虽然微软在这个问题上保持沉默.这也是意料中的事情,我觉得,因为Java近来很成功而使用Java的公司都报告说它们在生产效率上比C++获得了提高.

Java所带来的巨大影响和大家对它的广泛接受已经由工作于这种语言和平台之上的程序员数量明显的说明了(估计世界范围内共有两百五十万程序员使用Java).由这种语言写成的应用程序的数量是令人惊讶的并已经渗透了每一个级别的计算,包括无线计算和移动电话(比如日本发明的Java电话).C#能够在用户领域获得这样的礼遇吗?我们必须等待并观望,就象已经由SSI公司的CEO和主席Kalpathi S. Suresh指出来的那样,"我发现所有这些都是渐进的.如果C#不存在,我们总能回到Java或C和C++.这些都不完全是新技术;它们在更大的意义上来说只是大公司制造的市场噱头.我们必须给他们时间安顿下来看看这些是不是真的对IT工业有什么影响."
C++,这个词在中国大陆的程序员圈子中通常被读做“C加加”,而西方的程序员通常读做“C plus plus”,它是一种使用非常广泛的计算机编程语言。C++是一种静态数据类型检查的,支持多重编程范式的通用程序设计语言。它支持过程序程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格。

贝尔实验室的本贾尼·斯特劳斯特卢普(w:en:Bjarne Stroustrup)博士在20世纪80年代发明并实现了C++(最初这种语言被称作“C with Classes”)。一开始C++是作为C语言的增强版出现的,从给C语言增加类开始,不断的增加新特性。虚函数(virtual function)、运算符重载(operator overloading)、多重继承(multiple inheritance)、模板(template)、异常(exception)、RTTI、名字空间(name space)逐渐被加入标准。1998年国际标准组织(ISO)颁布了C++程序设计语言的国际标准ISO/IEC 14882-1998。遗憾的是,由于C++语言过于复杂,以及他经历了长年的演变,直到现在(2004年)只有少数几个编译器完全符合这个标准。

另外,就目前学习C++而言,可以认为他是一门独立的语言;他并不依赖C语言,我们可以完全不学C语言,而直接学习C++。根据《C++编程思想》(Thinking in C++)一书所评述的,C++与C的效率往往相差在正负5%之间。所以有人认为在大多数场合C++ 完全可以取代C语言。

C++语言发展大概可以分为三个阶段:第一阶段从80年代到1995年。这一阶段C++语言基本上是传统类型上的面向对象语言,并且凭借着接近C语言的效率,在工业界使用的开发语言中占据了相当大份额;第二阶段从1995年到2000年,这一阶段由于标准模板库(STL)和后来的Boost等程序库的出现,泛型程序设计在C++中占据了越来越多的比重性。当然,同时由于Java、C#等语言的出现和硬件价格的大规模下降,C++受到了一定的冲击;第三阶段从2000年至今,由于以Loki、MPL等程序库为代表的产生式编程和模板元编程的出现,C++出现了发展历史上又一个新的高峰,这些新技术的出现以及和原有技术的融合,使C++已经成为当今主流程序设计语言中最复杂的一员。

至于计算机2级为什么不包括C#,因为各种语言的思想都是相同的,掌握了C,其他的就都很容易了,我们学的主要是这个思想

C语言和C++的区别和联系如下:C++和C语言本来就是两种不同的编程语言,但C++确实是对C语言的扩充和延伸,并且对C语言提供后向兼容的能力;但二者在具体语言上存在许多区别。关键字的不同:C语言有32个关键字;C++有63个关键字。后缀名不同:C源文件后缀.c,C++源文件后缀.cpp,在VS中,如果在创建源文件时什么都不给,默认是.cpp。返回值不同:C语言中,如果一个函数没有指定返回值类型,默认返回int类型;C++中,如果一个函数没有返回值则必须指定为void。参数列表不同:在C语言中,函数没有指定参数列表时,默认可以接收任意多个参数;但在C++中,因为严格的参数类型检测,没有参数列表的函数,默认为void,不接收任何参数。C语言和C++的学习顺序C++编程语言的第一大重要组成部分就是“面向过程编程”,而这正是C语言老大哥的领域。即使没有学过C语言,一上来就直接学习C++的小伙伴,应该也难逃“面向过程”这一部分的内容。从理论上来说,学C++前并不一定非得学C语言,但是有C语言底子再去学C++往往更具优势,最起码“面向过程编程”这一部分内容能够轻车熟路。

两者区别有很多:1、不一样的程序思维,C语言是面向过程的,而C++是面向对象的。 2、C语言的数据库是松散的,只是把功能相同的函数放在一个头文件中;而C++对于大多数的函数都很紧密,特别是C语言中没有的C++中的API是对Window系统的大多数API有机的组合,是一个集体。 3、C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它可以有自己的成员变量和成员函数。

C++是C的扩展,引入了面向对象编程方法,不使用面向对象的方法的话,是兼容C语法的。可以最简单的理解,C++语言包含了C语言。用专业术语讲就是C++语言是多范式的,可以编写C代码,也能编写C++代码。备注:反过来说C++支持C,但是C编译器是不支持C++的,因为C++是C的超级,C是C++的子集。

c C++都是语言 ,C++扩展了c C#是工具 封装很多类 C 到 C++ 到 C# 从表面理解 C 升级 C++ ----------- C++ 升级 ---------- C++ ++ 不就是 C#了吗 C#是一种面向对象的、运行于.NET Framework之上的高级程序设计语言 至于学C#有前途吗 只要微软不倒闭 你就有饭吃 C语言 和这两者比属于低级语言 1


刚察县15378668614: c++和c程序有什么区别 -
翠星障翳: C语言与C++的区别有很多: 1,全新的程序程序思维,C语言是面向过程的,而C++是面向对象的. 2,C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中;而C++对于大多数的函数都是有集成的很紧密,特别是C语...

刚察县15378668614: C语言与C++的区别在哪里? -
翠星障翳: C语言是结构化和模块化的面向过程的语言,C++语言是面向对象的程序设计语言.C++语言是C语言的超集,也就是说学会了C++,你其实已经把C语言学 会了.至于说有什么区别,应该说是编程思想的区别吧,C是基于过程的,强调的是程序...

刚察县15378668614: C语言和C++不同在哪里? -
翠星障翳: 在C的基础上,一九八三年又由贝尔实验室的Bjarne Strou-strup推出了C++. C++进一步扩充和完善了C语言,成为一种面向 对象的程序设计语言.C++目前流行的最新版本是Borland C++4.5,Symantec C++6.1,和Microsoft VisualC++ 2.0.C++...

刚察县15378668614: C++与C有什么区别 -
翠星障翳: C/C++是指C语或C++,是指一系列的语言 C和C++的关系: 差不多是win98跟winXP的关系.C++是在C的基础上增加了新的理论,玩出了新的花样.所以叫C加加.C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程...

刚察县15378668614: C语言与C++语言有什么区别 -
翠星障翳: C与C++的区别 C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制),而对于C++,首要考虑的是如何构造一个对象模...

刚察县15378668614: c语言与c++的区别? -
翠星障翳: c是面向过程的,数据与算法分开.它的重点在于算法和数据结构.侧重于计算机底层操作.c++是面向对象的,主要特点是类,封装和继承.与C的区别主要为 :类、继承和多重继承、运算符重载、类模板、C++标准库、模板库.C++是C的超...

刚察县15378668614: C++与C语言的区别在什么地方 -
翠星障翳: 一种理解是:c++是c的扩充;它们的编程思想不一样,c面向过程,c++面向对象,当然c++也可面向过程,但其特点是面向对象.

刚察县15378668614: C语言和C++语言的区别是什么? -
翠星障翳: 区别太多,跟你讲下理念的区别吧:c语言是面向过程语言,通过变量,函数等完成操作,一般用于较为底层的,和硬件直接打交道(比如控制寄存器,驱动程序的编写).c++语言是一门面向对象语言,通过类,实例化类的对象来完成功能,相对于c语言更多应用于上层软件.语言没有好坏优劣,只有适合不适合,要根据你要完成的项目决定语言和开发工具.

刚察县15378668614: C语言与C++语言有哪些区别请详细的讲一讲
翠星障翳: 1:就语言的角度,C和C++的差别不是很大,我大致说说,C语言的开发是一个全共有性质的,几乎谈及不上什么对象的概念,而C++的程序设计,很的函数(对数据对象...

刚察县15378668614: C语言和C++语言有什么不同?
翠星障翳:c 是一种编程语言,准确来说是一种面向过程的编程语言,这种语言的代码 可重用性比较低. c++ 是从 c 的基础上开发出来的编程语言,加多了一个类的概念,也成带类的c , 是一种面向对象的编程语言,这种语言的代码可重用性 在c的基础上大大提高,数据的安全性也得到提高(在它基础上开发的 java 在安全上做的更好)~

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