全站数据
8 4 2 0 5 8 1

KEIL C51提示错误unresolved external symbol

一心备考教师 | 简单学习,快乐成才!         
问题更新日期:2024-10-19 22:41:06

问题描述

KEIL C51提示错误unresolved external symbol希望能解答下
精选答案
最佳答案

是试过了,KEil编译通过,没有问题,可能是你Keil设置的问题,解决办法:

1.是文件没有添加到工程里。

2.可能是因为存在没有被调用的已经定义的函数。

3.不知道你有没有把Source group组下面的A51.C删掉,如果没有删,在A51.c上点右键,选择remove file

"

".

4.建一个新的c文件,里面写一个空的函数,把该文件添加到project中,注意该文件不能再选generate assembler SRC file和assemble SRC file选项。重新编译工程,如果警告该函数没被调用,在主文件中调一下。

5.建一个新的c文件,把主文件中的几个函数移至该文件,把该文件添加到project中,注意该文件不能再选generate assembler SRC file和assemble SRC file选项。重新编译工程。其他:UNRESOLVED EXTERNAL SYMBOL 说明连接的时候没有找到外部变量extern xdata unsigned char RxPnt; 只是说明引用外部变量,并不是实际的声明。应该在某个.c文件里有xdata unsigned char RxPnt才行。extern中对这个变量做了声明,说这个变量将会在这个文件中用到,但并没有定义也就是那个变量并没有真实存在.需要要某个地方定义一下,也有可能是你定义了,但是被条件编译给去掉了也有可能.具体查一下工程里的所有源文件看看