16-C语言模块化编程(多文件编程)

 

1、模块化编程概念

     所谓模块化编程,就是多文件(.c文件)编程,一个 .c 文件和一个 .h 文件可以被称为一个模块。

     如果你学习C语言很久了,还只会在一个 .c 文件里写代码,那么今天将会让你突破,带你了解多文件编程,教你学会如果有效的组织各个文件,如何将各个文件联系起来。

  在以下场景中会使用头文件:

(1) 通过头文件来调用库功能。

    在很多场合,源代码不便(或不准)向用户公布,只要向用户提供头文件和二进制的库即可。用户只需要按照头文件中的接口声明来调用库功 能,而不必关心接口怎么实现的。

(2) 多文件编译。

    将稍大的项目分成几个文件实现,通过头文件将其他文件的函数声明引入到当前文件。

(3) 头文件能加强类型安全检查。

     如果某个接口被实现或被使用时,其方式与头文件中的声明不一致,编译器就会指出错误,这一简单的 规则能大大减轻程序员调试、改错的负担。 

2、多文件开发 

3、多文件开发的注意事项

关于头文件的内容,初学者还必须注意:

  1)头文件中可以和C程序一样引用其它头文件,可以写预处理块,但不要写具体的语句。

  2)可以声明函数,但不可以定义函数。

  3)可以声明常量,但不可以定义变量。

  4)可以“定义”一个宏函数。注意:宏函数很象函数,但却不是函数。其实还是一个申明。

  5)结构的定义、自定义数据类型一般也放在头文件中。

  6)多文件编程时,只能有一个文件包含 main() 函数,因为一个工程只能有一个入口函数。我们把包含 main() 函数的文件称为主文件。

  7)为了更好的组织各个文件,一般情况下一个 .c 文件对应一个 .h 文件,并且文件名要相同,例如 fun.c 和 fun.h。

    8)头文件要遵守幂等性原则,即可以多次包含相同的头文件,但效果与只包含一次相同。

  9)防止重复包含的措施

  #ifndef MY_INCLUDE_H #define MY_INCLUDE_H //头文件内容

  #endif 

人生之路,不忘初心,勿忘始终!
原文地址:https://www.cnblogs.com/xdl745464047/p/4003634.html