当前位置:首页 » 编程软件 » c51编程编译警告

c51编程编译警告

发布时间: 2022-09-08 08:00:34

A. c51编程警告*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS

大哥。。。你的void main拼错了。。。拼到了mian了。。。还有

提醒你一句,D1=0;后面最好加一句while(1);

养成良好习惯

B. keil c51编译出现警告

1主函数(main)写重复了。
2
地址空间溢出

C. 用keil编写的 C51错误 *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: C_START

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

解决办法:

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

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

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

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

5.建一个新的c文件,把主文件中的几个函数移至该文件,把该文件添加到project中,注意该文件不能再选generateassemblerSRCfile和assembleSRCfile选项。重新编译工程。

其他:UNRESOLVEDEXTERNALSYMBOL说明连接的时候没有找到外部变量

externxdataunsignedcharRxPnt;只是说明引用外部变量,并不是实际的声明。

应该在某个.c文件里有xdataunsignedcharRxPnt才行。

extern中对这个变量做了声明,说这个变量将会在这个文件中用到,但并没有定义

也就是那个变量并没有真实存在.

需要要某个地方定义一下,

也有可能是你定义了,但是被条件编译给去掉了也有可能.具体查一下工程里的所有源文件看看

D. c51编译过程中常见的警告有哪些

1.
*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL
在main函数里面使用了某个变量,但没有申明。或者申明了没有实体。也就是说对于这个参数,编译器无法解析
2.
*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL
头文件定义时没有加上ifndef
把gui.h文件按如下格式应该就没问题了
//gui.h
#ifndef GUI_H_HFILE
#define GUI_H_HFILE 1
//此处放原来的头文件内容
//
#endif
3.
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
有些已经定义的函数或者变量没有使用。
这些是在编译过程中较常见的,以后遇到了也会继续补充。相互勉励吧,加油

E. C51编译警告warning C182: pointer to different objects

以前听说过指向指针的指针,和二维数组的数组名是有区别的,不知道,只是不是同样的原因。

F. keil c51 问题:程序无法编译

你那程序也不长啊,直接把程序发上来,发什么图片哪?
第二个图片显示的,没有错误了,只有一个警告,是因为调用那个延时子程序delay( ) 时,打错了一个字母,打成dalay 了。
另外提示:保存C程序的文件夹,最好不 要用汉字,而且文件夹的层数不要太多了,你这一共是五层文件夹,有两层还是汉字,编译时容易出错的。

G. C51编程,REFERENCE MADE TO UNRESOLVED EXTERNAL.

C51编译警告“*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL”

*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL

SYMBOL: ?C_START

MODULE: .STARTUP.obj (?C_STARTUP)

*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL

SYMBOL: ?C_START

MODULE: .STARTUP.obj (?C_STARTUP)

ADDRESS: 000DH

问题原因:没把C文件添加到项目中

解决方法:把新建的.c文件添加的项目文件中

c/c++语言中有很多地方要用到extern,但是如果没有真正的了解它的意义,会给编程带来很大的麻烦,为了使大家少走弯路,特祥细的说明一下。

对于比较小的程序,一般只有一个c文件和一个头文件,全局变量我们通常会直接定义在c文件中,在程序之前加int i定义。如果要在头文件中定义有以下两种方法:用extern来声明:extern int i;这一句只是对变量i进行声明,在c文件的程序之前必须加上int i进行定义。extern int i=0;这一句声明和定义都做了。

对于大一点的程序,有很多c文件和头文件,这个时候全局变量就必须在头文件中声明,然后在一个c文件中定义。如果在头文件中定义,则编译的时候会出现重复定义的错误。如果只有头文件中声明就会出现没有定义有警告。

这四个警告就是变量k在头文件中有声明,但是没有定义,只需在某一个c文件的程序之前定义一下即可。

H. 51单片机汇编 警告 WARNING L5: CODE SPACE MEMORY OVERLAP 求解答

编译没有问题。
你的问题可能在于:工程中还有另一个文件,占用了0000H开始的地址,如文件:STARTUP.A51
请在Add files to group...中删除此类文件即可。

热点内容
byte二进制java 发布:2025-03-23 04:58:16 浏览:775
反编译dsl文件 发布:2025-03-23 04:58:16 浏览:601
抖音上回娘家的路线图安卓用哪个软件 发布:2025-03-23 04:57:10 浏览:593
怎么看购车配置好坏 发布:2025-03-23 04:50:53 浏览:87
ftp上传工具免费 发布:2025-03-23 04:36:22 浏览:169
我的世界手机服务器怎么重开的图 发布:2025-03-23 04:18:37 浏览:378
sql写存储过程 发布:2025-03-23 04:18:36 浏览:787
互感器电流的算法 发布:2025-03-23 04:03:58 浏览:750
抖音上为什么说服务器正在升级中 发布:2025-03-23 03:51:21 浏览:34
编程自我学 发布:2025-03-23 03:43:26 浏览:995