㈠ c语言什么是面向过程,什么是面向对象
满意答案冬夜读书示子聿11级2011-10-29何必理会这个,别指望一个新人会理解面向对象。当你开始工作两三年后,你自然而然就理解什么叫面向对象。别整天听人说面向对象有多么牛,面向对象的基础是面向对程。满意答案大头鬼4级2011-10-29C语言是面向过程。你了解下面向对象就知道区别了,“对象”大概就是一个程序的零部件,就是把一些函数、字段、属性(你暂时就想是C语言的一些函数和变量吧)包装在一起,这么做的好处是什么,利于重用,便于管理,好理解,总之好处一坨。就好比一辆车的一个部件,要换就换吗,不会影响到整个程序的框架吧。
要深入还是比较抽象的,建议学C的时候顺便看下C++或者其他面向对象语言
从网上找个项目看看。实践学的比较快。
㈡ 为什么说“C语言是一种面向过程()的程序设计语言”
面向对象和面向过程的简单解释:
面向过程:和你谈业务。把所有的事情都谈妥了,开始做项目。一整套项目做下来了,有需求要变。还得整个改变。
面向对象:边做业务,边谈需求,这样就能够避免上面的问题
㈢ C语言的面向过程和C++的面向对象分别是什么意思
C++和C的差别还是比较多的。
初学的话,可以认为C++是C的超集,除了支持C的面向过程,还支持面向对象编程。
面向过程就是以过程为中心的编程思想。分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。以公共汽车为例,在面向过程的思想里,汽车启动是一个事件,汽车到站是另一个事件。在编程序的时候我们关心的是某一个事件,而不是汽车本身,所以要分别对启动和到站编写程序。
面向对象是一种以事物为中心的编程思想。以公共汽车为例,我们关心的是由汽车抽象成的对象,这个对象有自己的属性,像轮胎、颜色等;有自己的方法,像象启动、行驶等,方法是汽车的行为,而不是汽车的每个事件。面向对象需要建立一个汽车的实体,由实体引发事件,所以要分别针对汽车的属性和行为编写程序。
㈣ C语言C++分别面向过程和对象 过程和对象是什么
C语言是面向过程的,面向过程语言的程序代码=算法+数据结构,而C++和JAVA是面向对象的语言,程序代码=对象+消息。
我认为面向对象和面向过程就没有本质的区别,只是使用不同的方法和角度去观察一个世界。软件设计就像写剧本,数据就是角色,流程就是情节,整个软件就象一部电影,面向对象只不过是把数据和对这类数据的处理捆绑在一起,在设计情节的时候就不必关心某个角色是如何完成某个动作的,只要安排各个角色按顺序完成动作就好了。而面向过程怎么做呢?那就是安排各个角色按顺序完成动作,而如何完成动作参见第几章第几节或下面的注解。
从程序上或者剧本上看,面向对象就是先描述角色的特点和如何完成各种动作,然后才是具体情节;面向过程就是先描述角色的特点,然后讲述情节,情节中对角色如何完成某个动作再写一个小说明。从组织上看,面向对象的方法组织得更好更清楚一些,而没有更多的不同。
至于派生和继承只是把同类角色具有的相同特点和动作放在一起描述罢了,因为这个角色和那个角色与其它的角色相比在某个方面相同或类似,所以把它们分为一类,这个类就成了一个基类了,例如老师和作家都是知识分子,那么就在这里一起描述一些知识分子具有什么共同的特点,而不再在老师这类角色和作家这类角色里赘述了。
㈤ 在C语言中,什么叫做“面向对象”,什么叫做“面向过程”
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
例如五子棋,面向过程的设计思路就是首先分析问题的步骤:1、开始游戏,2、黑子先走,3、绘制画面,4、判断输赢,5、轮到白子,6、绘制画面,7、判断输赢,8、返回步骤2,9、输出最后结果。把上面每个步骤用分别的函数来实现,问题就解决了。
而面向对象的设计则是从另外的思路来解决问题。整个五子棋可以分为 1、黑白双方,这两方的行为是一模一样的,2、棋盘系统,负责绘制画面,3、规则系统,负责判定诸如犯规、输赢等。第一类对象(玩家对象)负责接受用户输入,并告知第二类对象(棋盘对象)棋子布局的变化,棋盘对象接收到了棋子的i变化就要负责在屏幕上面显示出这种变化,同时利用第三类对象(规则系统)来对棋局进行判定。
可以明显地看出,面向对象是以功能来划分问题,而不是步骤。同样是绘制棋局,这样的行为在面向过程的设计中分散在了总多步骤中,很可能出现不同的绘制版本,因为通常设计人员会考虑到实际情况进行各种各样的简化。而面向对象的设计中,绘图只可能在棋盘对象中出现,从而保证了绘图的统一。
功能上的统一保证了面向对象设计的可扩展性。比如我要加入悔棋的功能,如果要改动面向过程的设计,那么从输入到判断到显示这一连串的步骤都要改动,甚至步骤之间的循序都要进行大规模调整。如果是面向对象的话,只用改动棋盘对象就行了,棋盘系统保存了黑白双方的棋谱,简单回溯就可以了,而显示和规则判断则不用顾及,同时整个对对象功能的调用顺序都没有变化,改动只是局部的。
㈥ c语言是面向过程的还是面向对象的
c语言是面向过程的。面向过程是着重于其中程序设计的算法、语言的运用,如设计不同功能的函数。
C++是面向对象的。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。
c语言的特点:
1、代码具有较好的可移植性
C语言是面向过程的编程语言,用户只需要关注所被解决问题的本身,而不需要花费过多的精力去了解相关硬件,且针对不同的硬件环境,在用C语言实现相同功能时的代码基本一致,不需或仅需进行少量改动便可完成移植,这就意味着,对于一台计算机编写的C程序可以在另一台计算机上轻松地运行,从而极大的减少了程序移植的工作强度。
2、可生成高质量、目标代码执行效率高的程序
与其他高级语言相比,C语言可以生成高质量和高效率的目标代码,故通常应用于对代码质量和执行效率要求较高的嵌入式系统程序的编写。
㈦ C语言是面向对象还是面向过程的
“C语言”面向过程和面向对象的区别是:面向过程是着重于其中程序设计的算法、语言的运用,如设计不同功能的函数。面向对象,按书上说是在C语言的基础上发展起来的,通俗说也就是更高一级的C语言,也就是C++,保留了大部分C语言的功能,而在设计方面却着重于对象的处理,获得更好地性能。
面向过程与面向对象的区别,由“如何把大象装进冰箱”来看:
一、面向过程
为了把大象装进冰箱,需要3个过程。
/* 思路:
1、把冰箱门打开(得到打开门的冰箱)。
2、把大象装进去(打开门后,得到里面装着大象的冰箱)。
3、把冰箱门关上(打开门、装好大象后,获得关好门的冰箱)。
*/
//每个过程有一个阶段性的目标,依次完成这些过程,就能把大象装进冰箱。
//写法一:
1:冰箱开门(冰箱)。
2:冰箱装进(冰箱,大象)。
3:冰箱关门(冰箱) 。
//写法一变体:
1:(冰箱开门 冰箱)。
2:(冰箱装进 冰箱大象)。
3:(冰箱关门 冰箱)。
//写法二:
冰箱关门(冰箱装进(冰箱开门(冰箱),大象))。
//写法二变体:
(冰箱关门 (冰箱装进 (冰箱开门 冰箱) 大象))。
二、面向对象
为了把大象装进冰箱,需要做三个动作(或者叫行为)。每个动作有一个执行者,它就是对象。
/* 思路:
1、冰箱,你给我把门打开。
2、冰箱,你给我把大象装进去(或者说,大象,你给我钻到冰箱里去)。
3、冰箱,你给我把门关上。
*/
//依次完成这些动作,你就可以把大象装进去。
//写法一:
1:冰箱.开门()
2:冰箱.装进(大象)
3:冰箱.关门()
//写法二:
冰箱.开门().装进(大象).关门()
㈧ C语言为什么是面向过程它不有一个结构体类型的吗感觉和C++的差不多。
c语言是面向结构也就是面向过程,java是纯面向对象,c++是即可面向过程编程也可面向对象编程;这里说的面向过程和面向对象是一种编程思想,具体说就是:
面向结构,是把要实现的功能分成很多模块即函数,每个模块承担某一功能,每个模块可能会多次利用,这样就只需调用函数就行,不用重新定义,节省了代码和时间。
面向对象,是我们把要实现的功能打包封装定义成一个类即一个对象,一个对象他既有多个属性也有多个行为,用类作为程序设计的单元,要实现这个类的功能还得把类实现,就是用类定义对象,就像面向结构里的函数定义后,你还得调用函数才能用函数的功能,类可以实现很多功能及对象的行为,也就是可以包含很多函数模块和变量,类与类直接可以通信也就是属性的传递就就是变量值的传递,这就比面向结构更加抽象,抽象级别更高。
而楼主所说的C语言的结构体,他是来定义数据块的,其实他只相当与面向对象的对象的属性,具有多种类型的变量,而没有对象的行为方式。
㈨ 小白提问,C语言中面向过程和面向对象是什么意思,谁能简单的帮我解释清楚
C语言没有面向对象,它是面向过程,就是什么都要你自己做。
C++是面向对象,就是什么都可以去让对象做。
就像你盖楼房,面向过程是你要自己一点一点的盖起来,这一切都是自己实现。面向对象是你可以定义多个对象,让对象去打地基的去打地基,搬砖的去搬砖,每一个步骤都可以让对象去实现,而你只需要操控多个对象,告诉它们应该去做什么。让他们自己完成自己的工作。这就是面向对象。