找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

Keil5编译C语言程序时.h配置的结构体在.C文件 有引用了未解析的外部的警告

查看数: 2777 | 评论数: 3 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2021-8-31 14:46

正文摘要:

typedef struct {         u8 sec_m;           u8 sec;      u8 minute;   u8 hour;   ...

回复

ID:624769 发表于 2021-8-31 18:10
你既然 include time.h 了。 为什么u8 count = 0;不放在 time.h里,反而用extern 去调用呢?另外,被include 的文件,最好不要 extern   不然很容易出现重复调用错误。你只要主程序include 这些头文件,这些头文件里声明的变量就自动包含近来,不容易出错。然后你看 那个timeing_unit 前面的 typedef, 不是这样用的,你真要重定义也不能用 extern.
ID:592807 发表于 2021-8-31 16:54
没有定义Timing_unit

51hei截图20210831165327.png (25.82 KB, 下载次数: 75)

51hei截图20210831165327.png
ID:887371 发表于 2021-8-31 16:11
项目中一个变量可以在多处带extern声明,但必须有并且只有一处不能带extern声明。
解决办法:
timer.h的第10行复制到下图的第2行,并删除extern。

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表