当前位置:首页 » 编程语言 » c语言怎么引用自己定义的头文件
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言怎么引用自己定义的头文件

发布时间: 2022-09-14 19:53:20

‘壹’ c语言定义一个头文件的格式和引用它的方法

扩展名为.h的文件,在C语言中被称为header file, 也就是头文件。

头文件的数据格式就是普通的文本文件,可以通过新建文本文件(txt),再把扩展名改为.h的方式创建,在此不赘述。


一、头文件内容格式。

头文件内容并没有固定的格式要求,不过一般为防止嵌套引用给编译器带来死锁或者没必要的开销,一般约定整个头文件中所有内容在一个条件编译下,即如下格式:

#ifndef 宏名

#define 宏名

//头文件主体

#endif

这样可以保证一个头文件在一个源文件中最多只被引用一次。为避免宏名重复,宏名一般由头文件名转换而来,如果头文件名是xxx.h,那么宏名一般定义为:

_XXX_H_

即前后各加一个下划线,同时文件名中除数字、字母、下划线以外的字符均转换为下划线(_)。


头文件主体中内容同样没有做强制约定,可以出现在源文件(.c)中的任何代码均可以放在头文件中。不过一般情况下可以包括以下几种内容:

1 引用其它头文件,格式为

#include <xxx.h>

#include "xxx.h"

二者区别在介绍头文件引用时再详细介绍。

2 定义私有类型。比如

typedef unsigned long U32; //为了简写而给无符号32位整型定义一个新的名字

struct xxx {};

也可以是enum, union等复杂类型。

3 宏定义。比如

#define MAX(a,b) (a>b?a:b)

4 函数声明。比如

void test_function(void);

5 全局变量声明。比如

extern int global_var;

6 如果有一个静态全局变量需要在不同源文件中使用,但各文件之间互不相关。那么可以放在头文件中。如:

static int gs_var = 3;


7 对于支持C99规范的C编译器,还可以把内联函数定义在头文件中。比如

staticinlineintget_min(inta,intb)
{
if(a>b)returnb;
returna;
}

以上是常见的头文件中的元素。但实际上头文件中也可以放全局变量的定义,全局函数的实现等。但是头文件中一旦定义了这样的元素,这个头文件在一个工程中只能被一个文件引用,否则编译器会报重复定义的错误。

比如如果有一个规模很大的常量数组,比如一副图片的二进制值,如果把它定义在源文件中,就会显得很冗余,因为并不会经常修改。 这时可以定义在头文件中,只在一个源文件中引用,当有多幅图片需要随时更换时,也可以通过简单的在源文件中修改引用的头文件名达到修改的目的。


二、头文件的引用。

头文件引用的方法其实之前已经大致说过了,在源文件中引用头文件和在头文件中引用的格式是一样的:

#include<xxx.h>或者

#include "xxx.h"

xxx为头文件名。

用<>和""是有一定的区别的。在编译器查找头文件的时候,会在两个区域分别查找。

一个是系统头文件区域,即类似于stdio.h一类的C库函数头文件区。

另一个是自定义头文件区,比如当前目录,以及其它自定义的目录。

用<>时,编译器会先在系统区域查找,然后再查找自定义区域。而用""时则相反。

由于一般并不推荐自定义头文件名与系统头文件名相同(容易引起歧义并难以维护),所以先后顺序并不是太重要,尤其在硬件速度越来越快的今天,使用哪种符号引用头文件已经差别很小了。

‘贰’ c语言怎么调用自定义头文件

#include”tou.h“ 这个文件要和源文件放在一起

‘叁’ C语言自定头文件引用问题。

头文件不能使用中文,这是第一点;
自定义的头文件要使用"",而不是«»;
因为""引的话,是先在当前工程路径下查找,找不到才去库文件中查找;而«»是直接去库文件中查找

‘肆’ C语言自定义头文件如何调用

假设该头文件名为yourheader.h
#include "yourheader.h"
如果包含失败了,假设该头文件完整路径为path,则#include "path"

‘伍’ c语言怎么包含自己写的头文件

C语言中的头文件可以自己写的。
头文件几个好处:
1,头文件可以定义所用的函数列表,方便查阅你可以调用的函数;
2,头文件可以定义很多宏定义,就是一些全局静态变量的定义,在这样的情况下,只要修改头文件的内容,程序就可以做相应的修改,不用亲自跑到繁琐的代码内去搜索。
3,头文件只是声明,不占内存空间,要知道其执行过程,要看你头文件所申明的函数是在哪个.c文件里定义的,才知道。
4,他并不是C自带的,可以不用。
5,调用了头文件,就等于赋予了调用某些函数的权限,如果你要算一个数的N次方,就要调用Pow()函数,而这个函数是定义在math.c里面的,要用这个函数,就必需调用math.h这个头文件。
头文件写法:
#include
...
//-------------------------------
#ifndef MY_POINT
#define MY_POINT
class Class1
{

}

class Class2
{
}
...
#endif
在要使用类定义的文件中加入
#include "头文件名.h "
一般来说,头文件里多数是放的函数定义或函数体。
此外,还有:
#ifndef ****
#define ****
……
#endif

之类的语句,用于控制#define 与 #endif之间的内容不被重复定义或插入。
#include 语句起的只是一个插入作用。
也就是说,#include 的文件里的内容可以随便写。
编译器使用#include 的文件里的内容来插入到#include 所在位置。
所以,你说的“头文件”没有固定格式。

‘陆’ c语言中如何定义,添加头文件

C语言头文件常用格式如下:

#ifndefLABEL
#defineLABEL
//代码部分
#endif

其中,LABEL 为一个唯一的标号,命名规则跟变量的命名规则一样。常根据它所在的头文件名来命名。


举例如下:

//头文件hardware.h
#ifndef__HARDWARE_H__
#define__HARDWARE_H__
#include<stdio.h>
intadd2(inta,intb)//计算两个变量的和
{
returna+b;
}
#endif

//test.c文件
#include"hardware.h"//将自定义的头文件包含进源文件中
voidmain()
{
printf("%d",add2(4,6));//调用头文件中定义的函数
}

‘柒’ 自己编写的头文件的调用

如果是自己定义的头文件,在同一个目录下的可以直接引用,用"x.h";
如果,#......<X.h> 是标准库中include中的头文件, 已经定义好了,用户可以直接使用;
在C语言家族程序中,头文件被大量使用。一般而言,每个C++/C程序通常由头文件(header files)和定义文件(definition files)组成。
头文件作为一种包含功能函数、数据接口声明的载体文件,主要用于保存程序的声明(declaration),而定义文件用于保存程序的实现 (implementation)。 .c就是你写的程序文件。

‘捌’ c语言怎么包含自己写的头文件

在项目中,添加新建项,选择“.h”项比如创建一个"my.h"然后在你需要引用的C文件#include
"my.h"就可以了

‘玖’ C语言怎么才可以调用自己编写的头文件拜托各位了 3Q

首先自己编写一个头文件,头文件的定义跟C语言的要求差不多,也是包含某个子程序(该子程序实现某种功能),接着再保存为"***.H"的文件,接着在编写的主函数中用#include "***.h"就可以了

‘拾’ C语言怎么应用头文件啊有帮助必采纳!

要保证你的fun.h文件存放在程序源文件所在目录中(或系统默认目录中)。
1.双引号:引用非标准库的头文件,编译器首先在程序源文件所在目录查找,如果未找到,则去系统默认目录查找,通常用于引用用户自定义的头文件。
2.尖扩号:只在系统默认目录(在Linux系统中通常为/usr/include目录)或者尖括号内的路径查找,通常用于引用标准库中自带的头文件。