在 C 语言中,头文件包含文件通常是一个源代码文件,程序员使用编译器指令将头文件包含进其他源文件的开始(或头部),由编译器在处理另一个源文件时自动包含进来。

  一个头文件一般包含类、子程序、变量和其他标识符的前置声明。需要在一个以上源文件中被声明的标识符可以放在一个头文件中,使用时在其他源文件中包含该头文件。

  头文件作为模块的公共接口,在其中声明函数原型、对象和数据类型。

  让我们首先创建一个头文件 add.h:

 #ifndef _ADD_H_
#define _ADD_H_ int add(int, int); #endif

  其中 #ifndef, #define, #endif 是编译器指令,为了防止重复包含头文件,最好将所有声明置于 #ifndef ... #endif 区块中。_ADD_H_ 是头文件标识符,为了保持唯一性,一般为头文件名大写,并将其中的句号替换为下划线,同时前后各加一条下划线。

  然后让我们再创建一个源文件 add.c 来实现 add.h 中声明的函数原型:

 #include "add.h"

 int add(int a, int b)
{
return a + b;
}

  至此我们就准备好了一个源码文件 add.c 和一个头文件 add.h,现在你可以在其他 .c 文件中包含头文件 add.h,然后将它链接到 add.c 的链接文件。

  现在我们创建一个文件 triple.c,并在其中包含 add.h 头文件:

#include <stdio.h>
#include "add.h" int triple(int x){
return add(x, add(x, x));
} void main() {
int x;
scanf("%d", &x);
printf("x=%d\n", triple(x));
}

  接下来就是使用 gcc 编译它们,首先编译 .c 源文件为 .o 链接文件:

$ gcc -c triple.c -o triple.o
$ gcc -c add.c -o add.o

  我们得到两个链接文件 triple.o, add.o。现在让我们将它们链接成可执行文件:

$ gcc triple.o add.o -o triple

  让我们测试一下可执行文件 triple:

$ ./triple 

x=

  总结:头文件是在预编译阶段使用,在预编译时编译器会使用头文件中的内容替换 #include 命令。

最新文章

  1. Fiddler学习笔记
  2. 基于Red5的视频直播平台
  3. java生成带html样式的word文件
  4. JS瀑布流布局模式(2)
  5. [老老实实学WCF] 第七篇 会话
  6. EGOImageView的使用方法及注意事项
  7. ios 将状态栏改为白色方法!
  8. VC++学习之VC中常见问题
  9. BZOJ 1263: [SCOI2006]整数划分( 高精度 )
  10. SilkTest高级进阶系列7-用PostMessage模拟鼠标
  11. mysql 索引对于select速度提升作用实验
  12. C++ 开发OCX 的方法和注意事项
  13. ANT property三种使用方式
  14. angular打包后路由和文件路径不对
  15. tomcat web漏洞整改--Apache Tomcat examples directory vulnerabilities
  16. WebRTC 简介及服务搭建、测试
  17. NFine中权限判断出错的问题
  18. Java 支付宝支付,退款,单笔转账到支付宝账户(支付宝支付)
  19. 『MXNet』第五弹_MXNet.image图像处理
  20. node知识积累

热门文章

  1. Qt封装QTcpServer参考资料--QT4中构建多线程的服务器
  2. WEB打印(jsp版)
  3. matlab中生成随机数的相关知识
  4. JDBC结果集
  5. JUnit4忽略(Ignore)测试实例
  6. Spring Boot 快速搭建的三种方式
  7. Mac下终端使用密钥登录服务器
  8. Mybatis最入门---数据库的下载与安装
  9. hive cst 时间转换
  10. Java学习之——泛型