引言
当我们开始接触一系列的工程项目后,很有可能会接触一个程序有几百行,甚至几千行的代码。这样的程序结构是比较复杂的,也是比较臃肿的,我个人比较喜欢苗条的东西,代码也不例外。因此,这里使用预处理头文件的方法,给大家介绍一下如何让代码不再臃肿。
举例分析
我们首先举个例子,有一个这样的main.c函数:
从上面的例子中可以看到,包含的头文件很多,而且程序自身用到的函数也非常多,声明语句也很多。甚至,在我们工作的时候,可能还会遇到比上面例子多得多的代码。
这样的程序容易让人一看就头晕脑胀,很难受。因此,我们要想办法将他们分开:
- 将头文件,函数声明等全部打包放入一个自定义的头文件之中:
- 将函数打包成一个.c文件:
- 调整Main.c函数,并且包含自己的头文件:
- 注意!分开的文件最好要在同一个目录之中
然后使用gcc将所有.c文件一起编译
总结自定义的头文件能放什么
- 函数声明。
- 结构体、联合体、枚举列表的定义。
- 其他头文件。
- 宏定义。
- 特殊函数的定义:内联函数、static函数的定义
头文件的编写格式:
假设头文件名字为:myhead.h
#ifndef _MYHEAD_H_
#define _MYHEAD_H_
(头文件内容...)
#endif
#ifndef
判断是否已经定义该头文件,如果条件成立,则定义该头文件,若不成立则不定义。
头文件的搜索范围:
在.c语言中包含头文件中,我们包含头文件应该要注意以下:
- 头文件尖括号:
#include <xxx.h>
直接到系统标准头文件路径寻找 - 头文件双引号:
#include "xxx.h"
先在本目录寻找该头文件,再到系统标准头文件路径寻找。
原则:
如果包含的是系统的头文件,应该使用尖括号<>。
如果包含的是自己定义的头文件,应该使用双引号“”。