头文件是扩展名为 .h 的文件, 包含了C函数生命和宏定义,被多个源文件中共引用共享。有两种类型的头文件:程序员编写的头文件还有编译器自带的头文件。
在程序中需要使用头文件需要预处理指令 #include 来引用。引用头文件相当于复制头文件的内容,但是我们不会直接在源文件中复制头文件的内容,因为很容易出错,特别是在程序是由多个源文件组成的时候。
在C或C++的程序中,建议将所有的常量,宏,系统全局变量和函数原型都写在头文件中,在需要的时候随时引用这些头文件。
首先是引用头文件的语法:
#include <file>
- 用于引用系统头文件
#include "file"
- 用于引用用户头文件
在编译代码时候,可以通过 -l 选项把目录前置在该列表前。
如果一个头文件被多次引用会产生错误,标准的做法是将文件的整个内容放到条件编译语句中。
#ifndef HEADER_FILE
#define HEADER_FILE
the entire header file file
#endif
当然也可以进行判断然后选择引用合适的头文件
#if SYSTEM_1
# include "system_1.h"
#elif SYSTEM_2
# include "system_2.h"
#elif SYSTEM_3
...
#endif
在文件比较多的时候不妥当,可以定义宏,用宏名称代替头文件名称。
#define SYSTEM_H "system_1.h"
...
#include SYSTEM_H
当然也可以创建一个 global.h
的头文件,在除了global.h 的文件外包含global就可以实现所有头文件的引用。
#ifndef _GLOBAL_H
#define _GLOBAL_H
#include <fstream>
#include <iostream>
#include <math.h>
#include <Config.h>
头文件的定义也比较简单,直接写内容可以,可以当作代码块看。