单片机KEIL软件里如何添加头文件?h头文件该如何定义?

单片机KEIL软件里如何添加头文件?h头文件该如何定义?,第1张

这个很简单,我给你用图文演示一遍,包你马上就会使用,在工程里面新建一个main.c文件,写入一个P1口LED闪烁,程序如下:

在新建一个Txt2 保存   Delay.H文件,注意后润是.H保存

在Delay里面定义头文件,里面就写一个延时1ms子函数如下

然后再main文件开头就可以直接调用和使用了,程序具体如下:

对于C语言的头文件来说,通常情况下是使用#include+文件名语句进行引用。

格式如下:

#include <stdio.h>

#include "MyLib.h"

使用 #include时,使用引号与尖括号的意思是不一样的。使用引号””时,首先搜索工程文件所在目录,然后再搜索编译器头文件所在目录。所以对于用户自定义头文件来说,通常使用双引号。

而使用尖括号<>时,刚好是相反的搜索顺序。所以对于编译系统提供的头文件来说,通常使用尖括号。

例:

假设我们有两个文件名一样的头文件 hardware.h ,但内容却是不一样的。一个保存在编译器指定的头文件目录下,我们把它叫做文件I ,另一个则保存在当前工程的目录下,我们把它叫做文件 II 。

如果我们使用的是# include <hardware.h>,则我们引用到的是文件 I。如果我们使用的是#include “hardware.h”,则我们引用的将是文件 II 。

头文件有很多种,不同的头文件作用是不一样的,在51编译器上,因为没有用到编译连接器,一般一些功能函数都写在头文件里面,这样便于管理也便于修改,这时候就要注意变量定义的顺序和头文件添加的顺序。比如说:

你在a.h里面定义了一个uchar

a;

你要b.h里面有这样一条语句a=5;

但是你在添加的顺序是:

#include

"b.h"

#include

"a.h"

那么这时就会报在b.h中变量a未找到的错。

换回来:

#include

"a.h"

#include

"b.h"

就好了。

这类只是一个分类文件的头文件里面,其他的都没有什么特定的要求。

还有一个就是在头文件里面包含头文件,这样是可以的。

但是也有一个要注意的,那就是头文件包含只能是单一顺序的。不能相互包含。

比如在头文件a.h里面有一条

#include

"b.h"

那么b.h就是a.h的头文件了。b.h里面就不能有再包含a.h了。

还有一种头文件是一种引用头文件。

他起着连接外部c文件的作用。原理也很简单。

就是在外部c文件里面的所有函数都在这个头文件里面加上

extern

+这个函数;告诉编译器这个函数在外部文件,添加在头部就好了。没有什么特别的要求。主要是因为现在的编译器都足够的聪明。

打字很辛苦啊。希望采纳。不懂继续追问。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11873582.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存