大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
模块化编程是为了更好的管理工程、方便以后移植代码、使主函数或主文件(即有main函数的那个文件)变得简单,因为我们读代码时一般都是从主函数开始读的。
创新互联2013年至今,是专业互联网技术服务公司,拥有项目成都网站制作、网站建设、外贸网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元袁州做网站,已为上家服务,为袁州各地企业和个人服务,联系电话:18980820575
那怎么进行模块化呢?
简单的就是一个功能包装成一个函数,要实现什么功能就调用哪个函数实现。
而复杂点的就是,一个功能模块统一放一个C文件中,这个模块相关的函数全部在这个C文件中实现,在主文件(即有main函数的C文件)想要使用这个模块的功能函数,只需要包含它的头文件就可以调用了。那头文件就只是放这个功能模块的函数声明。
这样子做,以后移植就方便多了。如果别的工程需要这个功能模块,只需复制一下它的C文件已经H文件到这个工程目录下,就能使用。
比如实现LCD描字、划线、画圆等等函数都放在一个叫做lcd.c的文件中,那就应该有一个叫做lcd.h的文件跟它对应,这个.h都是放这个.c文件对外函数的声明。主文件的开头出只需来一个#include"lcd.h"就可以调用这些画圆划线函数了。
模块化是指一个程序包含多个源文件,比如.c或.h,每个文件可称为一个模块。
比如我写了一个简单例子
#include stdio.h
extern void sayHello();
char *str;
int main()
{
str="hello word!";
sayHello();
return 0;
}
#include stdio.h
void sayHello()
{
extern char *str; //引用main变量
printf("%s\n",str);
}
C语言中用函数来实现程序模块。
模块化程序设计是将一个大的任务分解成若干个小任务,再将小任务分解成更小的任务,直到每一个任务都只完成一个独立功能。这样的每个任务都叫做模块,C语言中模块是用函数来实现的。
借助函数来实现程序模块化,把你想实现的功能用函数来实现,不同功能的就用不同的函数来实现,而且,函数在一定程度上可以被复用,所以称为模块,搜索零基础学通C语言系列大全之线程_模块儿_静态库_循环总结视频教程就可以看了。
c语言是模块化编程的工具,模块如何组织,模块之间如何交互应该是个大问题。我觉得有以下几个值得注意的地方(不对的地方请大家指正):
1、每个源文件就是一个独立的模块,它应该能够在不连接任何其它模块、不需要其它源文件的情况下独立编译。
2、模块之间是通过函数、常量、变量、结构定义、宏(似乎也是常量的一种)进行交互的
3、每个模块应该包括导入和导出两个部分,比如要调用另外一个模块的函数foo(),需要
extern int foo();
这应该属于模块的导入部分
而由该模块提供的函数,应该在相应的头文件中声明,作为模块的导出部分。
模块的导出部分应该放在该模块的头文件中。
4、如果只在本模块使用的变量,在本模块中定义成static的就可以了;否则就是全局变量,全局变量在头文件中声明一下,同时也作为模块的导出部分。
5、宏既可以定义在头文件中,也可以定义在源文件中。如果宏只是模块中用到,相当于局部常量,放到源文件中好了;如果其它模块也要用到,那么把它放到头文件中去。
6、结构定义似乎都放在头文件中。是不是应该另外有一个头文件,专门用来定义结构???
首先,我不知道自己的想法是否正确;其次,关于到底应该怎么样组织文件,我想应该也是有个标准的,可惜我没找到这样的资料。希望有高人能站出来指点一下,谢谢
C语言中的模块化体现在两个方面:
1 函数。函数是C语言的最小单位,每个函数均实现一个独立的功能,于是每个函数均可以当做是一个最小的功能模块。这样,C语言就实现了最基本的模块化。
2 文件。在C语言中,支持一个程序由多个源文件编译,所以可以把类似功能的一组函数写在同一个文件中,以源文件为单位,实现模块化。当模块较大时,可以写在多个头文件中,然后编译成一个库文件,以库文件为单位,实现模块化。