c和c++区别是什么?

 我来答
热爱社会的飞飞
高能答主

2021-09-20 · 衣食以厚民生,礼义以养其心。
热爱社会的飞飞
采纳数:530 获赞数:51592

向TA提问 私信TA
展开全部

C是一个结构化语言,它的重点在于算法和数据结构;对于语言本身来说C是C++的一个子集。 C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。

  C实现了C++中过程化控制及其他相关功能;而在C++中的C,相对于原来的C还有所加强,引入了重载、内联函数、异常处理等。而c++更是拓展了面向对象设计的内容,如类继承、虚函数、模板和包容器等。

 C++是面向对象的,C是面向过程的这里要注意,C是面向过程化的,但是C++不是完全面向对象化的,他仍然可以写出类似C的程序,所以只能说C++是拥有面向对象化特性的,JAVA这种语言才是真正面向对象的!



支持数据封装和数据隐藏

在C++中,类是支持数据封装的工具,对象则是数据封装的实现。C++通过建立用户定义类支持数据封装和数据隐藏。

在面向对象的程序设计中,将数据和对该数据进行合法操作的函数封装在一起作为一个类的定义。对象被说明为具有一个给定类的变量。每个给定类的对象包含这个类所规定的若干私有成员、公有成员及保护成员。完好定义的类一旦建立,就可看成完全封装的实体,可以作为一个整体单元使用。类的实际内部工作隐藏起来,使用完好定义的类的用户不需要知道类是如何工作的,只要知道如何使用它即可。

支持继承和重用

在C++现有类的基础上可以声明新类型,这就是继承和重用的思想。通过继承和重用可以更有效地组织程序结构,明确类间关系,并且充分利用已有的类来完成更复杂、深入的开发。新定义的类为子类,成为派生类。它可以从父类那里继承所有非私有的属性和方法,作为自己的成员。

支持多态性

采用多态性为每个类指定表现行为。多态性形成由父类和它们的子类组成的一个树型结构。在这个树中的每个子类可以接收一个或多个具有相同名字的消息。当一个消息被这个树中一个类的一个对象接收时,这个对象动态地决定给予子类对象的消息的某种用法。多态性的这一特性允许使用高级抽象。

继承性和多态性的组合,可以轻易地生成一系列虽然类似但独一无二的对象。由于继承性,这些对象共享许多相似的特征。由于多态性,一个对象可有独特的表现方式,而另一个对象有另一种表现方式。

生活达人木木
高粉答主

2021-09-23 · 每个回答都超有意思的
知道大有可为答主
回答量:3558
采纳率:100%
帮助的人:67.2万
展开全部

区别如下:

一、结构不同

1、C语言:C语言结构只有成员变量,而没成员方法。

2、C++:C++结构中可以有自己的成员变量和成员函数。

二、设计不同

1、C语言:C语言进行过程化、抽象化的通用程序设计。

2、C++:C++既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。

三、函数库不同

1、C语言:C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中。

2、C++:C++对于大多数的函数都是有集成的很紧密,是一个集体。

C语言简介:

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。

C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
后生言言之g
科技发烧友

2023-03-19 · 智能家居/数码/手机/智能家电产品都懂点
知道小有建树答主
回答量:611
采纳率:100%
帮助的人:19.3万
展开全部
C++ 相对于 C 语言更加强大、灵活,可以更好地适应不同的编程需求。然而,C++
语言的复杂度也更高,需要程序员有更强的抽象思维能力和编程能力才能够掌握。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
万叶爱玩游戏

2021-12-06 · 游戏领域创作者
万叶爱玩游戏
采纳数:448 获赞数:479

向TA提问 私信TA
展开全部
“C++ 和 C 的设计哲学并不一样,两者取舍不同,所以不同的程序员和软件项目会有不同选择,难以一概而论。与 C++ 相比,C 具备编译速度快、容易学习、显式描述程序细节、较少更新标准(后两者也可同时视为缺点)等优点。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ProYuan
科技发烧友

2021-12-04 · 嵌入式linux音视频采集、编解码、传输
ProYuan
采纳数:29 获赞数:55

向TA提问 私信TA
展开全部
c++是C语言衍生来的,C是C++的基础。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式