c语言和c++有什么区别
2个回答
展开全部
本文介绍的是C、C++、VC++ 三者之间的区别,也许作为初学者来说,会很容易混淆。希望通过本文的介绍,能够给你带来帮助。
C语言
C语言是一种古老而又经久不衰的计算机程序设计语言,大约诞生于上个世纪60年代。由于它的设计有很多优点,多年以来深受广大程序设计人员的喜爱,并逐渐 淘汰了很多其它程序设计语言。我们平时使用的大多数软件都是用C语言开发的。
很多后来出现的一些语言也沿用了很多它的东西。C语言的编程方式是一种称为面 向过程的开发方式。也就是说,解决问题的时候,程序员需要思考计算机应该如何一步一步完成这个问题,然后将相应过程转化为代码。
当软件变得越来越复杂,代码越来越长的时候,一个人的脑力有限,用面向过程的方法很难开发,往往写着后面的,就忘了前面写 了什么了。而且复杂软件往往需要很多人协同开发,更加大了开发难度。一种称为面向对象的软件开发方法应运而生。面向对象的思想用几句话很难说清楚。
C++的出现
国内的计算机教材在讲到这里的时候往往也都说不清楚什么叫面向对象。这个词语也许只能意会不能言传吧。需要开发过一些相关软件才能领会。这里还是不具体说了吧。 C语言不是面向对象的,而程序员又离不开C语言,因此有人在C语言的基础上添加了面向对象的功能,就是C++.同时,C++修改了C语言中一些不方便的规 定,使C语言用起来更方便了。
这里需要注意两点
1.谭浩强那本著名的<<c程序设计>>后面用了几张篇幅简要介绍了C++,但是他讲的C++只是上面提到的修改C语言不方便的规定,涉及到面向对象的内容一点没有。
C和C++的编程思想不一样
2.C++是在C语言的基础上发展来的,但是并不是C++比C语言高级,两者的编程思想不一样,应用的领域也不一样。在各自的领域,谁也不能替代谁。
Visual C++的诞生
windows操作系统出现以后,开发windows平台的图形界面程序成为一大难题。用C语言虽然能开发,但是程序员要花费很大的精力处理图形界面。同时,windows平台图形界面的程序又都有很多相似点。为了解放程序员,让他们把精力主要放在程序功能上,而不是放在图形界面上,microsoft公 司推出了visual系列软件开发环境,包括为C++程序员提供的Visual C++.程序员能用C++语言在其上开发图形界面的软件。微软随Visual C++提供了很多用于显示Windows界面的库函数。可以说Visual C++就是C++加上windows图形界面。
Visual C++假设用户已掌握C++
那是不是想学C++和C语言的话,只要去学Visual C++就行了呢?大错特错!市面上任何一本Visual C++教材都是假设用户已经掌握了C++语言,重点在讲和Windows程序设计相关的东西,而且往往都要讲MFC.没有C++基础,根本无法理解MFC 的任何东西。
很多人急功近利,觉得花费半年甚至一年时间学习C++.连个图形界面的程序都开发不出来,太不划算。这种想法也是错误的。世界上的软件只有一部分具有图形 界面,运行在Windows平台,需要用Visual C++开发。学好了C++,即使不学Visual C++,也是大有作为的。
Visual C++做了很多封装
还有很多人,要学C++或者C语言,先整个Visual C++装上。其实这是一种误区。Visual C++操作复杂,而且帮助开发者做了很多事情。对于初学者来说,操作复杂的话要花很多时间用在掌握Visual C++的用法上。帮开发者做的那些事情,往往是初学者需要了解的,自己亲手做一下,对学习更有好处。
再说了,大家装的往往都是非法版本,这种事情不是人家不追究就万事大吉了。自己良心有愧啊。大家学软件还不是为了挣钱,可是自己却不尊重前辈的劳动成果,真是无耻啊。
本人建议C语言和C++的初学者,上机练习最好用自己喜欢的代码编辑器写好后用GCC编译,对以后的深入学习大有好处。还是那句话,理论加实践才是最好的老师。
C语言
C语言是一种古老而又经久不衰的计算机程序设计语言,大约诞生于上个世纪60年代。由于它的设计有很多优点,多年以来深受广大程序设计人员的喜爱,并逐渐 淘汰了很多其它程序设计语言。我们平时使用的大多数软件都是用C语言开发的。
很多后来出现的一些语言也沿用了很多它的东西。C语言的编程方式是一种称为面 向过程的开发方式。也就是说,解决问题的时候,程序员需要思考计算机应该如何一步一步完成这个问题,然后将相应过程转化为代码。
当软件变得越来越复杂,代码越来越长的时候,一个人的脑力有限,用面向过程的方法很难开发,往往写着后面的,就忘了前面写 了什么了。而且复杂软件往往需要很多人协同开发,更加大了开发难度。一种称为面向对象的软件开发方法应运而生。面向对象的思想用几句话很难说清楚。
C++的出现
国内的计算机教材在讲到这里的时候往往也都说不清楚什么叫面向对象。这个词语也许只能意会不能言传吧。需要开发过一些相关软件才能领会。这里还是不具体说了吧。 C语言不是面向对象的,而程序员又离不开C语言,因此有人在C语言的基础上添加了面向对象的功能,就是C++.同时,C++修改了C语言中一些不方便的规 定,使C语言用起来更方便了。
这里需要注意两点
1.谭浩强那本著名的<<c程序设计>>后面用了几张篇幅简要介绍了C++,但是他讲的C++只是上面提到的修改C语言不方便的规定,涉及到面向对象的内容一点没有。
C和C++的编程思想不一样
2.C++是在C语言的基础上发展来的,但是并不是C++比C语言高级,两者的编程思想不一样,应用的领域也不一样。在各自的领域,谁也不能替代谁。
Visual C++的诞生
windows操作系统出现以后,开发windows平台的图形界面程序成为一大难题。用C语言虽然能开发,但是程序员要花费很大的精力处理图形界面。同时,windows平台图形界面的程序又都有很多相似点。为了解放程序员,让他们把精力主要放在程序功能上,而不是放在图形界面上,microsoft公 司推出了visual系列软件开发环境,包括为C++程序员提供的Visual C++.程序员能用C++语言在其上开发图形界面的软件。微软随Visual C++提供了很多用于显示Windows界面的库函数。可以说Visual C++就是C++加上windows图形界面。
Visual C++假设用户已掌握C++
那是不是想学C++和C语言的话,只要去学Visual C++就行了呢?大错特错!市面上任何一本Visual C++教材都是假设用户已经掌握了C++语言,重点在讲和Windows程序设计相关的东西,而且往往都要讲MFC.没有C++基础,根本无法理解MFC 的任何东西。
很多人急功近利,觉得花费半年甚至一年时间学习C++.连个图形界面的程序都开发不出来,太不划算。这种想法也是错误的。世界上的软件只有一部分具有图形 界面,运行在Windows平台,需要用Visual C++开发。学好了C++,即使不学Visual C++,也是大有作为的。
Visual C++做了很多封装
还有很多人,要学C++或者C语言,先整个Visual C++装上。其实这是一种误区。Visual C++操作复杂,而且帮助开发者做了很多事情。对于初学者来说,操作复杂的话要花很多时间用在掌握Visual C++的用法上。帮开发者做的那些事情,往往是初学者需要了解的,自己亲手做一下,对学习更有好处。
再说了,大家装的往往都是非法版本,这种事情不是人家不追究就万事大吉了。自己良心有愧啊。大家学软件还不是为了挣钱,可是自己却不尊重前辈的劳动成果,真是无耻啊。
本人建议C语言和C++的初学者,上机练习最好用自己喜欢的代码编辑器写好后用GCC编译,对以后的深入学习大有好处。还是那句话,理论加实践才是最好的老师。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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有机的组合,是一个集体。但你也可能单独调用API。
3、特别是C++中的图形处理,它和C语言的图形有很大的区别。C语言中的图形处理函数基本上是不能用在C++中的。C语言标准中不包括图形处理。
4、C和C++中都有结构的概念,但是在C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它可以有自己的成员变量和成员函数。但是在C语言中结构的成员是公共的,什么想访问它的都可以访问;而在VC++中它没有加限定符的为私有的。
5、C语言可以写很多方面的程序,但是C++可以写得更多更好,C++可以写基于DOS的程序,写DLL,写控件,写系统。
6、C语言对程序的文件的组织是松散的,几乎是全要程序处理;而c++对文件的组织是以工程,各文件分类明确。
7、C++中的IDE很智能,和VB一样,有的功能可能比VB还强。
8、C++对可以自动生成你想要的程序结构使你可以省很多时间。有很多可用工具如加入MFC中的类的时候,加入变量的时候等等。
9、C++中的附加工具也有很多,可以进行系统的分析,可以查看API;可以查看控件。
10、调试功能强大,并且方法多样。
这是我之前收藏的一篇博客关于C和C++的区别的文章内容。
C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。
C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”。
C语言与C++的区别有很多,下面是简要概述:
1、全新的程序程序思维,C语言是面向过程的,而C++是面向对象的。
2、C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中;而C++对于大多数的函数都是有集成的很紧密,特别是C语言中没有的C++中的API是对Window系统的大多数API有机的组合,是一个集体。但你也可能单独调用API。
3、特别是C++中的图形处理,它和C语言的图形有很大的区别。C语言中的图形处理函数基本上是不能用在C++中的。C语言标准中不包括图形处理。
4、C和C++中都有结构的概念,但是在C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它可以有自己的成员变量和成员函数。但是在C语言中结构的成员是公共的,什么想访问它的都可以访问;而在VC++中它没有加限定符的为私有的。
5、C语言可以写很多方面的程序,但是C++可以写得更多更好,C++可以写基于DOS的程序,写DLL,写控件,写系统。
6、C语言对程序的文件的组织是松散的,几乎是全要程序处理;而c++对文件的组织是以工程,各文件分类明确。
7、C++中的IDE很智能,和VB一样,有的功能可能比VB还强。
8、C++对可以自动生成你想要的程序结构使你可以省很多时间。有很多可用工具如加入MFC中的类的时候,加入变量的时候等等。
9、C++中的附加工具也有很多,可以进行系统的分析,可以查看API;可以查看控件。
10、调试功能强大,并且方法多样。
这是我之前收藏的一篇博客关于C和C++的区别的文章内容。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询