全站数据
8 4 2 0 5 8 1

c语言中是如何实现模块化的

临沂成考函授指导 | 简单学习,快乐成才!         
问题更新日期:2024-10-16 10:27:57

问题描述

c语言中是如何实现模块化的希望能解答下
精选答案
最佳答案

c语言是模块化编程的工具,模块如何组织,模块之间如何交互应该是个大问题。我觉得有以下几个值得注意的地方(不对的地方请大家指正):

1、每个源文件就是一个独立的模块,它应该能够在不连接任何其它模块、不需要其它源文件的情况下独立编译。

2、模块之间是通过函数、常量、变量、结构定义、宏(似乎也是常量的一种)进行交互的

3、每个模块应该包括导入和导出两个部分,比如要调用另外一个模块的函数foo(),需要 extern int foo(); 这应该属于模块的导入部分 而由该模块提供的函数,应该在相应的头文件中声明,作为模块的导出部分。 模块的导出部分应该放在该模块的头文件中。

4、如果只在本模块使用的变量,在本模块中定义成static的就可以了;否则就是全局变量,全局变量在头文件中声明一下,同时也作为模块的导出部分。

5、宏既可以定义在头文件中,也可以定义在源文件中。如果宏只是模块中用到,相当于局部常量,放到源文件中好了;如果其它模块也要用到,那么把它放到头文件中去。

6、结构定义似乎都放在头文件中。是不是应该另外有一个头文件,专门用来定义结构???首先,我不知道自己的想法是否正确;其次,关于到底应该怎么样组织文件,我想应该也是有个标准的,可惜我没找到这样的资料。希望有高人能站出来指点一下,谢谢