【C语言】C语言中自定义头文件和多文件编译

【C语言】C语言中自定义头文件和多文件编译

注:此篇文章为本人在学习过程中的小总结,如有错误,请多多指正。

一、C语言中自定义头文件

头文件(.h文件)的作用

1、声明:包含一些文件需要的共同的常量,结构,类型定义,函数,变量

2、对函数进行声明:使函数的作用域从函数声明的位置开始,而不是函数定义的位置

3、提供接口:对一个软件包来说可以提供一个给外界的接口,例如stdio.h

如何自定义头文件

自定义头文件内的内容一般按照以下顺序来写入代码

由下图可以看到stu_malloc.c文件中只写了一个自定义头文件和个别函数与主函数,但是编译时未出现报错,那我们来看一下stu_manlloc.h中都包含了哪些东西吧

stu_manlloc.h文件(自定义头文件)中的内容

注""意和<>的区别

引用自定义头文件的格式是#include "自定义头文件名.h"

"":从用户的工作路径下搜索头文件

<>:从标准库路径下搜索头文件

二、C语言中的多文件编译

如果在工作中,大家分工完成一个大项目,每个人负责一个模块,难免会重复引用一样的头文件,如果不实现多文件编译,就会产生报错

多文件编译的格式

#ifndef 文件名(一般用大写表示,所有的.换成_)

#define 文件名

自定义头文件内容

#endif

多文件编译作用

防止头文件重复定义引起报错

如下图,stu_malloc.h自定义头文件中并未实现多文件编译,多次引用便会报错

但是重复引用stdio.h头文件的话,并未出现报错

我们进入到stdio.h中查看一下,发现在开头和结尾处多了三行令人瞩目的代码

那我们将自定义头文件中也按这种方式定义,发现重复引用自定义头文件也不会报错

猜你喜欢

“神药”PD-1/PD-L1抑制剂为何耐药?《Cancers》综述为你带来最新进展!
广州万圣节超全攻略|集市、电音节、派对...浪就完事了!
十万个为什么
365体育平台

十万个为什么

07-11 6045
旅行社终于想通,该换种思路赚钱了
容纳11.5万人!为承办2030年世界杯,摩洛哥要建世界上最大的足球场
淘宝卖家上传图片总失败?手把手教你避开10大坑