注册 登录
查看: 497|回复: 16

请问一下,为什么会出现这种undefined错误

[复制链接]
发表于 2014-11-13 02:00:08 | 显示全部楼层 |阅读模式
就是编译出现Error[Pe020]: identifier "LCD_COLOR" is undefined
定位之后,其实在上方的LCD.h中已经typedef了 LCD_COLOR ,请问为什么会出现这种情况?谢谢


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2014-11-13 11:59:01 | 显示全部楼层
工程配置一下这里,就好了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-13 13:15:58 | 显示全部楼层
gsc617 发表于 2014-11-13 11:59
工程配置一下这里,就好了。

不是没加路径导致没包括LCD.h
如果是没包括的话是这种错误

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2014-11-13 13:32:51 | 显示全部楼层
ExiBQ 发表于 2014-11-13 13:15
不是没加路径导致没包括LCD.h
如果是没包括的话是这种错误

可能源文件都没有,拷贝一下
来自安卓客户端来自安卓客户端
回复 支持 反对

使用道具 举报

发表于 2014-11-13 13:39:36 | 显示全部楼层
这问题,太奇怪了,我也不好判断是什么原因。

第一个出错的地方,是在哪个文件的?
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-13 13:41:51 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-13 13:39
这问题,太奇怪了,我也不好判断是什么原因。

第一个出错的地方,是在哪个文件的?

是我自己加的文件LCD_Protected.h

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2014-11-13 13:44:37 | 显示全部楼层
ExiBQ 发表于 1415857311
是我自己加的文件LCD_Protected.h
你的 LCD.h 里面是不是也包含了 LCD_Protected.h 文件?
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-13 13:55:46 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-13 13:44
你的 LCD.h 里面是不是也包含了 LCD_Protected.h 文件?

也没有这种重复包含的情况,应该是GUI官方的代码,基本没改动,只移过来
回复 支持 反对

使用道具 举报

发表于 2014-11-13 13:57:04 | 显示全部楼层
ExiBQ 发表于 2014-11-13 13:55
也没有这种重复包含的情况,应该是GUI官方的代码,基本没改动,只移过来

上传一下代码,让大伙们看看吧。不然不好判断了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-13 13:59:44 | 显示全部楼层
本帖最后由 ExiBQ 于 2014-11-13 14:01 编辑
单会 发表于 2014-11-13 13:57
上传一下代码,让大伙们看看吧。不然不好判断了。

好的,谢谢了
http://pan.baidu.com/s/1mghzfb6
模式是DZ10_Debug,只改这个里面的Preprocessor
哦,我的IAR是7.30
回复 支持 反对

使用道具 举报

发表于 2014-11-13 15:35:23 | 显示全部楼层
ExiBQ 发表于 2014-11-13 13:59
好的,谢谢了
http://pan.baidu.com/s/1mghzfb6
模式是DZ10_Debug,只改这个里面的Preprocessor

我跟了一个钟头的代码,终于找到问题所在。

LCD_H ,我们的底层用于表示 液晶的分辨率高度,而LCD.h 里的防止宏条件编译,就是用  LCD_H ,你修改成其他的,例如 _LCD_H_


  1. #ifndef _LCD_H_
  2. #define _LCD_H_

  3. //**************

  4. #endif /* _LCD_H_ */



一般宏条件编译,要尽量避免重复定义,头文件,一般都是在 开头和结尾加上 _ 来防止跟工程中现有的代码冲突。
回复 支持 反对

使用道具 举报

发表于 2014-11-13 19:54:58 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-13 15:35
我跟了一个钟头的代码,终于找到问题所在。

LCD_H ,我们的底层用于表示 液晶的分辨率高度,而LCD.h ...

晕,原来是这问题,难怪我看了很久都没找到原因。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-13 21:04:49 | 显示全部楼层
本帖最后由 ExiBQ 于 2014-11-13 21:06 编辑
山外メ雲ジ 发表于 2014-11-13 15:35
我跟了一个钟头的代码,终于找到问题所在。

LCD_H ,我们的底层用于表示 液晶的分辨率高度,而LCD.h ...

我错了,下次一定自己先好好检查,谢谢山外大哥
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-13 21:05:50 | 显示全部楼层
单会 发表于 2014-11-13 19:54
晕,原来是这问题,难怪我看了很久都没找到原因。

麻烦了,再次谢谢,下次我一定注意
回复 支持 反对

使用道具 举报

发表于 2014-11-13 21:06:32 | 显示全部楼层
ExiBQ 发表于 1415883889
我错了,下次一定自己先好好检查,谢谢山外大哥
这问题很经典,我想拿来出题目给论坛坛友做。看看大家能不能找出来,不知道楼主介不介意拿来出题。
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-13 21:14:07 | 显示全部楼层
山外メ雲ジ 发表于 2014-11-13 21:06
这问题很经典,我想拿来出题目给论坛坛友做。看看大家能不能找出来,不知道楼主介不介意拿来出题。

可以的,不介意
回复 支持 反对

使用道具 举报

发表于 2014-11-13 21:15:25 | 显示全部楼层
ExiBQ 发表于 1415884447
可以的,不介意
好的,先替论坛坛友谢谢啦
来自PC客户端 来自PC客户端
回复 支持 反对

使用道具 举报

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

本版积分规则

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