野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13676|回复: 2

不是说没有定义,就是多重定义

[复制链接]
发表于 2015-1-17 13:29:08 | 显示全部楼层 |阅读模式
在demo.h文件进行如下声明:
extern  char  ADC_STR1[5];
extern  char  ADC_STR2[5];


在app.c中进行如下定义:
char  ADC_STR1[5];
char  ADC_STR2[5];


需要在MainTask.c中调用:
TEXT_SetText(GUI_ID_TEXT1,&ADC_STR1[5]);          
TEXT_SetText(GUI_ID_TEXT1,&ADC_STR2[5]);


可是却一直说,ADC_STR1[5]没有定义:
..\..\GUI_Maintask\ADC1.c(269): error:  #20: identifier "ADC_STR1" is undefined
..\..\GUI_Maintask\ADC1.c(270): error:  #20: identifier "ADC_STR2" is undefined

如果在MainTask.c中加上定义,则出现多重定义的错误。
在app.c和MainTask.c中均添加了demo.h文件。

这是怎么回事,该怎么解决?






回复

使用道具 举报

发表于 2015-1-17 14:40:03 | 显示全部楼层
把demo.h的
extern  char  ADC_STR1[5];
extern  char  ADC_STR2[5];
剪切放在MainTask.c就好了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-17 19:17:15 | 显示全部楼层
flyleaf 发表于 2015-1-17 14:40
把demo.h的
extern  char  ADC_STR1[5];
extern  char  ADC_STR2[5];

嗯,解决了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-23 15:24 , Processed in 0.028415 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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