51单片机c语言编程头文件的问题

我在头文件#include"beep.h"中已经定义了函数voidBeep_Half(void),在主函数中已经包含了beep.h,但是编译时还是提示该函数没有定义,必须... 我在头文件#include "beep.h"中已经定义了函数void Beep_Half(void),在主函数中已经包含了beep.h,但是编译时还是提示该函数没有定义,必须在main主函数中重新声明一遍void Beep_Half(void);请问这是什么原因??? 展开
 我来答
矮子根
2014-05-10 · TA获得超过5391个赞
知道大有可为答主
回答量:2120
采纳率:75%
帮助的人:559万
展开全部

不知你是怎么弄的,我照你的样式重复了一遍也没有报错,请照下图认真检查:

另外注意:你在两个文件里定义的beep 和 Beep 是不一样的,这才是错误的原因。

tattackor
2015-10-31 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:862万
展开全部
对于C语言的头文件来说,通常情况下是使用#include+文件名语句进行引用。
格式如下:
#include

#include "MyLib.h"
使用 #include时,使用引号与尖括号的意思是不一样的。使用引号””时,首先搜索工程文件所在目录,然后再搜索编译器头文件所在目录。所以对于用户自定义头文件来说,通常使用双引号。
而使用尖括号>时,刚好是相反的搜索顺序。所以对于编译系统提供的头文件来说,通常使用尖括号。
例:
假设我们有两个文件名一样的头文件 hardware.h ,但内容却是不一样的。一个保存在编译器指定的头文件目录下,我们把它叫做文件I ,另一个则保存在当前工程的目录下,我们把它叫做文件 II 。
如果我们使用的是# include ,则我们引用到的是文件 I。如果我们使用的是#include “hardware.h”,则我们引用的将是文件 II 。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiaohw53
2014-05-10 · 超过29用户采纳过TA的回答
知道答主
回答量:116
采纳率:0%
帮助的人:46.8万
展开全部
这个告警是告诉你没有实现函数吧。你应该把这个函数的主体在.c里实现。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
单片机的战斗机
2014-05-10 · 超过31用户采纳过TA的回答
知道答主
回答量:445
采纳率:0%
帮助的人:91.6万
展开全部
你看看定义的函数名一样吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式