请问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与C++的区别:
1. C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是 如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程 (事务)控制)。
2. 对于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++有好处也有坏处,应该说至今仍有争论。
我的看法是,如果是做应用软件一类的编程,就不应该先学C,而且应该在初学时少接触C的旧式编程风格,而是把大部分精力放在C++的标准库(包括基于STL的编程,这方面国内一般的教材最欠缺),以及基于对象和面向对象的编程上。这是因为C++的这些应用从编程方式到代码风格都与C语言大相径庭,初学养成C式的编程习惯就很改掉,反而限制对类和泛型编程的理解。
如果是想接触比较底层的东西,以后做软件库开发、系统编程之类,那么学C语言,尤其是一些像宏、指针、内存管理等知识就很有好处(这些东西在前一种应用中却都要尽量避免)。但先学C的好处并不明显,因为直接学C++同样可以学到这些东西,只要改变一点学习侧重就可以了。
上面是从应用方向角度说的。至于学习的困难程度,直接学C++并不难,而且在一些方面更简单一些;只不过C++的内容比C多罢了。C++的创始人Stroustrup就大力提倡不要学C,并列举了先学C的种种坏处。因此我的意见也是不学C,直接学C++。

现在国内讲C++的书一般是先讲与C相似的一块,后讲C++独有的内容,没有融合在一起,看似C成了“基础”。其实这种讲法主要是由于国内编教材的教师多是学C语言(甚至机器码、汇编)出身的,可能到很晚才接触C++,因而有思维定势。其实看国外许多教材,一入门就强调类的概念,入门不多久就大量用到STL,过程式的语法与这些一块讲,同样也很直观(对象的概念实际上比函数的概念直观得多),可以学得通。

C语言和C++的区别大吗?
----------------------
区别很大:
一般来说,C++分四个子集:
(1)就是C语言。
(2)面向对象编程。(类,等等)
(3)泛型编程。(容器,模板等)
(4)STL。就是一些标准模板库。(如BOOTS等)
所以,C比C++小的多的多。
我是大二的学生,明年年初想考国二,可是听说国二证的有效期只为二年,是吗?国三的证有效期是多长时间?
----------------------------------------------
现在的任何等级证/水平证都是有有效期的。像我的“软件设计师”证是三年一审的。一般来说,最多是三年。
C语言的证和网络的证哪个更重要一些?
------------------------------------
看你工作方向。如果想编程,就学语言先。如果想从事网络组建工作最好拿“思科”的证。

C++是c的升级版

1、C是一门中级语言,C++是一个门高级语言。
2、C语言是面向过程的,而C++是面向对象的。
3、C语言仅支持内置的数据类型,C++支持内置和用户定义的数据类型。
4、C和C++中都有结构的概念,但是在C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它可以有自己的成员变量和成员函数。但是在C语言中结构的成员是公共的,什么想访问它的都可以访问
5、特别是C++中的图形处理,它和语言的图形有很大的区别。C语言中的图形处理函数基本上是不能用在中C++中的。C语言标准中不包括图形处理。
6、C语言对程序的文件的组织是松散的,几乎是全要程序处理;而c++对文件的组织是以工程,各文件分类明确。
7、C++中的IDE很智能,和VB一样,有的功能可能比VB还强。
8、C++对可以自动生成你想要的程序结构使你可以省了很多时间。有很多可用的工具如加入MFC中的类的时候,加入变量的时候等等。
9、C++中的附加工具也有很多,可以进行系统的分析,可以查看API;可以查看控件。
10、C中没有虚函数,C++有虚函数。
11.C语言没有命名空间功能,C++增加了命名空间,避免全局命名冲突。
12.C语言源文件的后缀是C,C++源文件是cpp。
13.C语言中如果一个函数没有指定返回值类型,默认返回int类型;C++中如果一个函数没有返回值则必须指定为void

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++的一个自洽子集,也具有强大的功能,同样值得学习。

几点学习建议:
1.基本概念很重要。无论学C,还是学C++,基本概念都是第一位的,也是比较困难的,但只有把握了基本概念才能把握整体脉络,才能居高临下。
2.C是C++的子集,它的基本概念和设计方法相对比较容易理解,初学者可从它入手。
3.如果要学好C++,建议初学者最好别在如VC,BCB平台下写程序,那种自动化的代码生成,花花绿绿的界面,会让你手足无措。最好先找一片空地(unix,dos),从头做起,写几个大点的程序,数个回合,再到VC,BCB下看看,你会轻松得很。在我看来,学好C/C++是成为VC,BCB高手的必由之路。
4.不要妄想速成,必须得一个byte,一个bit的去抠,尽量搞清楚每一个问题。
5.几本好书:
机械工业出版社的那套“计算机科学丛书”从C到C++,到面向对象设计,一应俱全,都TMD是经典中的经典,而且价格公道,童叟无欺。
国内也有几本好书,谭老爷子的书好倒是好,就是程序错误太多。强烈推荐清华周之英的《现代软件工程》(上、中、下),它是我所见到的国内少有的一本好书,精华的精华,要点的要点,细细品来,至少也属降龙十八掌等级的东东。

如果还是有人想学习C/C++的话, 有一些小问题我还是乐意解答的. 但是我认为学习C/C++是不重要的, 重要的是如何锻炼你的思路. 不要找一些连自己都搞不清的问题去做.

我认为虽然 "潭浩强" 同志有骗钱的嫌疑( 我手头就有一本几乎一模一样的英文书 ), 但是, 是他把这本入门手册引入中国, 使无数程序员了解了C语言, 我想他的功劳也是不可磨灭的. 在< C语言程序设计 >这本书中所有的例子都可以用做锻炼思路的基石, 他对大家的编程是很有帮助的. 我认为是值得一买的. 去思考课后的例子对你的编程很有帮助. 不要小看一个一个简单的例子, 他们是你通往成功的道路.

当你基本能够掌握了上一本书中例子后, 你就要自己找一些例子程序去看. 开始可能是看不懂, 但是只要努力就没有什么问题. 当你看过几个较大的例子之后, 你会茅塞顿开, ( 大量阅读例子程序是学习C/C++的捷径 ). 你会发现, 你的水平有了显著的提高. 你看的例子越多, 你对 Windows/DOS 了解的越多. 最好能够再看一些关于系统知识的书籍. 他会对你的编程很有帮助的.

这是我学习C/C++的一点心得, 希望对没有被我吓到而要继续学习C/C++的朋友们有一些帮助. 免得有些同志说我破坏中国软件人才的发展.

在最后我祝愿所有坚持学习C/C++的朋友们成功! 同时感谢阅读过我文章的同志们.

想学好C++,非学C不可!!!

今天我这么肯定的在这里讲这番话,是不想初学者陷入到语言越新越好的误区,本来这个题目就不是很严谨,但是我有几句话必须讲讲,为C平反!!

C++与C有什么不同呢?我们现在一步步地来分析一下
一、类,类我并不说它有什么不好,但是对于初学者,它是一个累赘。类的封装使得初学者对程序产生厌倦,感到不适和麻烦。
二、引用,引用是C++中最臭屁的东西了,最好尽量不要用它,我就是从来不用引用,除非万不得已。引用对于初学者就更容易产生混淆,不知道哪个是引用,哪个是变量。
三、函数的重载,初学者学函数的重载好像没什么坏处,但是,这会使初学者潜意识里对C语言的变量类型的重要性产生淡化,要记住C语言是对变量类型最敏感了的,变量的类型在C语言里的重要性是不言而喻的。
四、流操作符,和上面同样的道理,使得对变量类型的重要性产生淡化,况且,cin这个东东有点儿不怎么方便,有时会产生使初学者莫名其妙的结果。
五、操作符重载,典型的高级应用,初学者可能根本用不着,这个东东会让他们觉得C++很难,门槛高,看不懂…………。
六、继承,以及虚函数,典型的模仿四不象,这种狗屁东西除了看起来深奥,实用价值很低………………。我怎么可能把某个类的类型的指针去指向另一个不同类型但是是继承关系的类,来实现什么动态联编,晕…………
………………还有些东东我就不发表评论了,如:new,delete操作符等…………

七、误区:以问答形式:
问:C++是面向对象化的而C是面向过程化的?
答:第二对,第一问错,C++并非完全面向对象化,真正的面向对象化的语言恐怕只有Java才算得上。
问:C++能实现C所不能的功能吗?
答:至少我还没有发现……
问:学了C再学C++有障碍吗?比如程序设计思想……
答:至少我还没有看见谁有此症状。
问:学了C再学C++又要重头开始吗?
答:不,C++下可以实现C语言的一切功能。
问:我学完了C一定还要学C++才能编程吗?
答:完全没必要。
问:C++比C好在哪里?
答:更加符合软件工程学
问:学完了C再学C++是不是很容易?
答:那要看你是不是真正的学完了C语言,我从C到C++就一个星期的睡觉前的时间看两眼书,然后就大彻大悟。再跑到这里来发表些狗屁文章了。

最近在网上看到了很多人的学习方法,本人非常不赞同。很多人都想一口吃个胖子,要学就想学最新的,好象没有人愿意再去学那些老的,旧的编程语言了。但你们能学的懂吗?不学TC2。0等那些较早的优秀编程语言,你们能理解的了VC6。0?如果你真的能,我宁愿做你的徒弟!真是奇怪,那些最基本的语言都不懂的人,怎么可能去理解那些最新的编程语言?我学编程有三年了吧。成绩也不算多,只有一个计算机四级证和一个高程证,但我觉得我在学VC的时候还有很多的不明白的地方。没有人来教我,只能靠我自己,包括所有的成绩在内,我都是靠自己,我从不报班。学VC的半年多来,我想我已经基本入门,但依然有很多的困惑。刚开始学VC,就面临一个项目,我真的犹如笨蛋一般,四处吓摸,毫无头绪,最后勉勉强强才算做个差不多。学好VC再去学其他的高级WINDOWS编程,我想那真是轻而易举,毕竟WINDOWS的内部的很多东西都能直接被VC调用,你首先就可以对WINDOWS有个全新的认识,再去学其他的语言岂能不简单?

我的感觉是,面向过程和面向对象,其实都很重要的,在VC里也依然需要面向过程,很多东西都是一环扣一环,没有面向过程的思想,怎么可能去编程呢?建议多去看看有关WINDOWS编程的书,但多数都是比较老的书呦!我依然记得当年整天进行TC编程的辛苦,但我依然很怀念当年的劳动付出,毕竟我获得了我想获得的一切——编程思想。我觉得一个好的编程思想,绝对比你去学一门计算机语言好重要的多。要形成自己的编程风格。一个好的编程思想在你的头脑中一旦形成,学习什么语言都会很轻而易举,因为此时的你不在是简简单单的学习,而是来验证!


C和C\/C++是什么概念?
问:C++能实现C所不能的功能吗?答:至少我还没有发现 问:学了C再学C++有障碍吗?比如程序设计思想 答:至少我还没有看见谁有此症状。问:学了C再学C++又要重头开始吗?答:不,C++下可以实现C语言的一切功能。问:我学完了C一定还要学C++才能编程吗?答:完全没必要。问:C++比C好在哪里?...

15 c语言字符串常量区_
详情请查看视频回答

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

c和c++和python先学哪个?
6、至于先学C语言还是Python,比较资深的程序员给出的建议是:Python上手简单(当然语言本身还是没那么简单的),有交互性强的开发环境,还有众多的第三方库,学习起来乐趣会比C\/C++有乐趣得多。python和c先学哪个先学C,再学python。有人觉得应该从C语言开始入门,原因如下:C语言是你上大学第一门接触...

计算机二级C语言和C++有什么区别?
1、全新的程序程序思维,C语言是面向过程的,而C++是面向对象的。2、C和C++中都有结构的概念,但是在C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它可以有自己的成员变量和成员函数。但是在C语言中结构的成员是公共的,什么想访问它的都可以访问;而在VC++中它没有加限定符的为私...

c语言和c++的区别,想问环境上有什么区别吗?或者说比如c语言的函数和...
首先,C语言和C++语言是两种不同的语言,各自有不同的编译器。所以在开发环境方面就是两个不同的环境。当然,现实中由于C的编译器相对比较简单,各大厂商都会把IDE做成同时针对这两种语言的编译器。在任何一种编译器中新建一个项目的时候,都需要选择你使用的是C语言还是C++语言,后续的步骤是不一样的...

c和java有什么区别(c,c,java的区别)
底层的C、桌面应用程序、游戏等等C++、嵌入式,网页,Java。Java与C语言两者有什么区别?Java语言是从C语言发展而来的,保留了C语言中的大部分内容,并且在编程方面和C语言有很大的相似。Java语言具有自己的特征,Java语言中的语句更加清晰,规模小,非常容易学习。那么Java语言和C语言有那是不同的地方呢...

学习C语言需要掌握哪些基本知识?
C语言根据变量的生存周期来划分,可以分为静态存储方式和动态存储方式。 静态存储方式:是指在程序运行期间分配固定的存储空间的方式。静态存储区中存放了在整个程序执行过程中都存在的变量,如全局变量。 动态存储方式:是指在程序运行期间根据需要进行动态的分配存储空间的方式。动态存储区中存放的变量是根据程序运行的需要...

C语言中%c是什么意思
这是C语言的格式输出,%c,%y这些代表你要输出的数据的数据类型;%d 表示输出十进制有符号的整数。1、%u 十进制无符号整数。2、%f 表示输出浮点数。3、%s表示输出 字符串。4、%c表示输出单个字符。5、%p表示输出指针的值。6、%e表示输出指数形式的浮点数。7、%x, %X 表示输出无符号以十六进制表示...

C语言的问题?
是的,如果q == NULL,或者不确定的值, *q = value是不正确的。老师说的没错,但是得理解指针变量的含义:以int* q ,p,int n为例 q和n都是变量,但是q是一个指针变量。1, 它和n一样,是一个整数,可以做加减乘除,赋值等等一切整形变量能做的所有操作。所以 q = p+5, q = p这种...

柳北区13376464948: C语言与C++语言区别大吗??
唐胆丹红: 差别确实不小,C在C的基础上,一九八三年又由贝尔实验室的Bjarne Strou-strup推出了C++. C++进一步扩充和完善了C语言,成为一种面向对象的程序设计语言.C++目前流行的最新版本是Borland C++, Symantec C++和Microsoft VisualC++...

柳北区13376464948: C语言与C++语言有哪些区别请详细的讲一讲
唐胆丹红: 1:就语言的角度,C和C++的差别不是很大,我大致说说,C语言的开发是一个全共有性质的,几乎谈及不上什么对象的概念,而C++的程序设计,很的函数(对数据对象...

柳北区13376464948: c语言和c++有什么区别 -
唐胆丹红: C是C++的基础,C++语言和C语言在很多方面是兼容的.因此,掌握了C语言,再进一步学习C++就能以一种熟悉的语法来学习面向对象的语言,从而达到事半功倍的目的.C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首...

柳北区13376464948: C语言与C++语言有什么区别
唐胆丹红: C++可以认为是C语言的改进版,C++完全兼容C语言,C语言是面向过程的程序设计语言,c++是面向对象的程序设计语言,C++对C语言的重要改进就在于它提出了“类”这个概念,类相当于C语言中的结构体变量(用struct声明的),但是结...

柳北区13376464948: c++和c语言有什么区别? -
唐胆丹红: C语言是结构化和模块化的面向过程的语言,C++语言是面向对象的程序设计语言.C++语言是C语言的超集,也就是说学会了C++,你其实已经把C语言学会了.至于说有什么区别,应该说是编程思想的区别吧,C是基于过程的,强调的是程序...

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

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

柳北区13376464948: C 语言与C++的区别?就说编程工具上的区别 -
唐胆丹红: 要说这两个语言的区别在编程工具上没什么好讲啊,就像问 “面条和米粉的区别?就说用来盛他们的碗的区别” 一样.. 要搞清楚他们的区别要从他们的特性上来讲 C++起源于C,在C的基础上增加了面向对象机制,而且相对于C的面向过程机制,也做了很多功能上的扩充.C++完全兼容C.

柳北区13376464948: c语言和c++有什么区别?
唐胆丹红: C语言和C++的区别:C语言是一种面向过程设计的编程语言,他主要在于算法和数据的够成.所谓算法是指解决方法的步骤.C语言中没有封装、继承和多态,更没有类.C++是一种面向对象程序设计的编程语言.他中可以用封装、继承和多态,当然也可以拥有类.C++是程序员和软件开发者的好工具.C语言和C++的联系:C语言是C++的子集,而C++则是C语言的超集.也就是说,C语言就象C++的子女,而C++则象C语言的父母.C语言的程序可以在C++的上面用.C++完全包括C语言的语法,如果你学习好了C语言,学习C++那就是很容易的事了.

柳北区13376464948: C++与C语言最大的区别是什么 -
唐胆丹红: C和C++,都算是高级语言了吧,主要区别就在C++可以面向对象编程而C不行.C和汇编的区别呢就在于C比较高级,所以对于逻辑处理上来说比较方便.比如说要写个循环或者分支判断啥的只要很简单几句就可以了,但是汇编在这方面就比较麻烦,而且很容易出错,不易调试.但是作为偏高级语言的C来说,获得编程上面方便的同时也丧失了部分效率和对于细节的处理.因为编译器只能是以一个模式为你转换语法,所以损失效率这是必然的;而汇编作为最底层语言自然有着C所无法对比的操作所有底层硬件的优势.基本上就大概是这样了,各有优缺点.

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