为什么C语言在写游戏的时候经常模块化来编程

就是源程序通常很多个块,然后编译时像单车链一样一个接一个串在一起,这些原本应该是一个文本编辑器(意思是一页就可以写完的)就可以搞定的,为什么那么麻烦

原因主要有两点:
其一:一个大型程序通常都需要很多人同时开发,然后再组装成一个完整的程序。这时候,模块化显得尤为重要。经过软件设计工程师的分析设计,将一个程序(例如你说的游戏)分成各个相对独立的模块,然后分发到下面的项目组进行开发(或者外包到别的公司,甚至别的国家的公司)。这是一个技术性很强的工作,要求有极其丰富的软件设计经验。所以我们这些程序员(在技术上)的目标就是软件设计工程师(不是软考的那个,是真正的工程师)。

其次是为了可维护性。游戏是要升级的,其实任何软件都一样,升级意味着修改,修改意味着重新编写代码,重新编译,重新测试……对一整个庞大的文件做这些工作简单还是有针对性的对需要升级的部分进行修改简单呢?这是一个不言自明的问题。(但要说明一点,无论哪种情况,测试都是要全部重新测一遍的,因为即使很小的改动,也可能引入bug和错误,所谓“牵一发而动全身”是也)。

其它的如楼上指出的可移植性、可重用性等,也是重要的原因。

总之,模块化是百利而无一害的(设计良好的前提下,否则可能乱七八糟一大堆,还不如一个单一文件来的直观)。
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-08-25
这个就是C语言的特点和优势!
C语言隶属于模块化设计语言的类别,而现在流行的是面向对象的编程。
C语言运用模块编程,这样可以提高开发效率,特别是在开发大型软件或项目的时候,便于分工合作;其次,这样的设计才具有条理性,使今后的项目或软件维护工作更加简单、方便和明了;最后,模块化,能提高程序之间的重复利用度,不必要的工作就可以节约出来,缩短了程序的开发周期,所以如果用C语言开发程序,模块化编程是必须的。本回答被提问者采纳
第2个回答  2008-08-24
因为游戏代码一般都很长,放到一个文件里会让人眼花缭乱,而分到不同的文件里让人各取所需(比如一个管控制,一个管计算,一个管显示)就简单了。
第3个回答  2008-08-25
模块化使得程序条理清晰,层次清楚,无论是游戏还是其他较长的程序都比较实用.

把一段程序写为过程或函数,比写在主程序段中更加易于查找分辨和修改.
(设想一下,如果所有语句都堆积在主程序段,那么语句一多,你很难分得清楚哪个语句是做什么用的)

信息学竞赛中的大部分标准程序都是模块化编写的,供人观看也很易懂

参考资料:自己写的^_^

第4个回答  2008-08-25
假设一个游戏很大呢?
代码就1MB~10MB呢?
就一个文件 怎么管理
怎么维护 怎么修改
有错误的时候 找错误都找死你

分开写代码 组织程序 程序员最基础的技能

c语言模块化程序设计
1.模块化编程是指将一个庞大的程序划分为若干个功能独立的模块,对各个模块进行独立开发,然后再将这些模块统一合并为一个完整的程序。这是C语言面向过程的编程方法,可以缩短开发周期,提高程序的可读性和可维护性。2.在单片机程序里,程序比较小或者功能比较简单的时候,我们不需要采用模块化编程,但是,...

C语言的模块化编程还是不太理解,还请各位大神指点!
模块化编程是为了更好的管理工程、方便以后移植代码、使主函数或主文件(即有main函数的那个文件)变得简单,因为我们读代码时一般都是从主函数开始读的。那怎么进行模块化呢?简单的就是一个功能包装成一个函数,要实现什么功能就调用哪个函数实现。而复杂点的就是,一个功能模块统一放一个C文件中,这...

c语言是完全模块化和结构化的语言,怎么理解,什么是模块化和结构化
这就是模块化的简单理解,模块化侧重于“形成最终程序的源代码可以分离编写在各个.c源文件中”这个涵义。而结构化则相对来说是一种程序逻辑上的概念。也就是说,你怎么将你的程序最终要达成的功能以一种逻辑的方式将其分离为相对独立的功能,而这些单独的功能最终达成程序的整体功能。而一门语言要支持...

C语言编写的怎么都是命令控制台程序
1、控制台程序是基础,有基础了写图形界面的程序就很简单了。学完C++了学windows编程、MFC什么的,到时候就是图形界面了。2、图形界面需要些SDK的知识,windows的实现中基本上都是用的C语言,其各种接口基本上都是原生C语言函数,具体比如SDK用的windows API。使用纯C语言编写windows程序,工作量将会相当大...

c语言自己编程在什么情况下需要把函数写在一个源文件,在.h文件写上函 ...
写程序的时候需要模块化的这个概念,一个函数做一个函数的事情,一个C来做一个C的事情。这样程序的灵活性和可靠性便得到了提升调试的时候也便于调试!为什么要在.h文件上写上函数的原型呢?是为了在别的c文件里调用,一个C是不能直接调用另一个C的函数的。必须要加上 extern 这个修饰符表示是一个...

c语言是完全模块化和结构化的语言,怎么理解,什么是模块化和结构化
所谓模块化,简单的理解,就是说你的程序是由相互之间相对独立的模块组成。那么具体的说,一个稍微大一点的程序,不可能用一个.c源文件写上几十万行来完成它吧?这个程序会由许多分离的.c源文件来完成代码编写对吧。因此在组织源代码的时候,程序员把在概念上和功能上相对独立的模块分离成单独的.c源...

C语言的结构化和模块化有什么区别
结构化体现一种程序设计的思想,其基本原则是:从上到下,分而治之。可以按照功能或其它原则把程序分成几个部分,分别设计。进而组合在一起,这时要考虑几个部分的通融性和兼容性。模块化更多的是考虑一个功能在不同的情况下的通用性,我的意思是比如你设计了一个功能,你需要保证它能适应于不同的...

C语言是不是一种低级语言?
是因为它提供了一系列的抽象和结构化编程特性,如函数、数组、指针、结构体和联合体等,这些特性使得编程更加模块化和可重用。此外,C语言具有丰富的库支持,使得程序员可以编写复杂的程序而不必关注底层的硬件细节。尽管C语言提供了对底层硬件的直接访问,但这并不足以将其归类为低级语言。

c语言模块化程序设计是将一个大的任务分解成若干个小任务吗?
选A。一个C程序由一个主函数和若干个其他函数组成。若干个的意思就是可以有0个及以上个。c语言的程序模块称为函数。模块化程序设计是将一个大的任务分解成若干个小任务,再将小任务分解成更小的任务,直到每一个任务都只完成一个独立功能。这样的每个任务都叫做模块,c语言中模块是用函数来实现。

C语言宏定义 和 编程模块化
一.define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得程序的运行与预期的目的不一致,或者在读别人写的程序时,把运行结果理解错误,这对 ...

相似回答
大家正在搜