模块化编程是将计算机程序细分为单独的子程序的过程。模块是一个单独的软件组件,它通常可以与系统的其他组件一起用于各种应用程序和功能。
易用性
这种方法可简化操作,因为我们可以一次以模块的形式访问它,而不是一次关注整个数千万行代码。这样可以轻松调试代码,并减少错误。
可重用性
它允许用户通过其他界面重用功能,而无需再次键入整个程序。
易于维护
在处理模块时,它有助于减少冲突,帮助团队在处理大型应用程序时进行适当的协作。
C之所以称为结构化编程语言,是因为为了解决一个大问题,C编程语言将问题分为称为功能或过程的较小模块,每个模块负责特定的职责,解决整个问题的程序就是这些功能的集合。
模块基本上是一组相互关联的文件,它们共享其实现细节,但对外界隐藏。我们如何在c中实现模块化编程?默认情况下,在C中定义的每个函数都可以全局访问。这可以通过包括在其中定义函数实现的头文件来完成。
假设我们要声明一个堆栈数据类型,同时要向用户隐藏实现(包括其数据结构)。为此,我们首先定义一个名为stack.h的公共文件,该文件包含通用数据Stack数据类型和该堆栈数据类型支持的功能。
在头文件中,我们必须仅使用模块名称来包含常量,结构,变量和函数的定义,这样可以轻松地在具有多个模块的较大程序中识别定义源。
关键字extern和static帮助实现C中的模块化。
现在我们可以创建一个名为stack.c的文件,其中包含堆栈数据类型的实现:
主文件可能包括模块堆栈
当然,模块化编程还有其它特点和优势,这里不一一陈述了,感兴趣的朋友可以研究下