导航:首页 > 源码编译 > keil编译出两个相同的文件

keil编译出两个相同的文件

发布时间:2022-04-21 01:35:16

⑴ keil 怎么同时编译多个C文件

编好多个c文件,做个.h头文件,将main函数中需要的程序以类似extern
void
getnum()的格式写上,然后再main函数中添加include
“*.h”,便可以在main函数中使用其他c文件中定义的函数了。

⑵ keil建立一个工程中有多个程序共同编译的方法

keil设置里要包含进来,manage components里要设置包含文件

⑶ keil中怎么在一个工程下使用两个C文件

LZ问题问得不详细,回答没法详细。
在KEIL中使用2个 C文件,是非常简单的。比如有一个main.c文件,和一个LCD.c文件,main.c你是如何添加到KEIL 工程中的,LCD.c就用同样的办法添加到 KEIL 工程中就行了。
难点不是使用2个C文件,而是在一个C文件中,如何使用另一个C文件的函数、变量等。
多个 C文件的设计,一般称之为 模块化设计,一个C文件就为一个设备(模块)的功能函数(如LCD.c为液晶屏的功能函数)。这种设计的程序结构阶级性是非常明显的,如main.c 可以使用LCD.c的函数,而LCD.c 不可以使用main.c的函数,这就像一个上司可以命令下属干活,而一个下属不能安排上司做事。这C语言中,这叫函数归属关系,上级叫 父函数、下级叫 子函数。基于这种归属关系,所以,在多个C文件中,只需要在父级函数内,对子函数进行 外部函数声明(extern xxxxx();),就可以正常使用 子文件中的函数了。
但模块化设计就是为了方便功能程序(一般主文件 我称之为 功能程序)的编写。如果每一个模块都需要 main.c 在开头写一堆的 extern,不仅会导致主文件的程序界面混乱不堪,模块一多,还容易出错,增加主文件工作量。于是要求,每一个模块文件,都必须带有自己的声明文件(就是对应的头文件,如LCD.h)。主文件只需要包含这个模块的头文件,就能正常调用 子文件中的功能函数了,这样才能减少功能文件的程序编写工作,不仅可以减少出错率,还能提供程序可读性。只需查看功能文件内包含的头文件,就能知道这程序有什么功能模块了。

⑷ keil c程序两个副程序头文件相同,只能调用一个,头文件改不了,不知道怎么解决哪位高手帮下忙,急急急

可以用预处理。就是
#ifndef
#define
#endif
你试试重新建一个头文件,在头文件ABC.h
#ifndef ABC_H_
#define ABC_H_
#include "reg51.h"

#include "ABSACC.H"
#endif
然后在两个程序里包含"ABC.h".
不知道这样行不行。

⑸ keil一个工程文件下可以放多个.c文件吗但是编译时会出现错误,怎么解决

当然可以,但你需要有配套的.h文件让C文件之间可以互相调用。
例如有1.c和2.c两个文件,1.c中有个全局变量a,有个函数void b(void),那么就有1.h这么写
extern char a;
void b(void);
这样的话,如果2.c想使用a或函数b的话,在2.c的开头加一句#include "1.h"就能用了。

⑹ keil 多编译个文件编译出错

出现这个错误的原因在于不同的模块中出现了重复的符号。根据错误提示,貌似是你的两个.c文件里有同名的函数main,消除掉一个就可以了。

⑺ 我的KEIL为什么一个工程下面有两个文件,编译就不成功

你说的项目是独立的,是不是说这是两个题目的程序互相之间没有任何关系,要是这样的,就必须建立两个工程,各自进行编译,是不允许把两个程序放在一个工程中的。

⑻ keil生成的文件怎么那么多,分别是什么,比如.opt .bak .plg

.plg:编译器编译结果
.hex和.bin:可执行文件
.map和.lst:链接文件
.o:目标文件
.crf、.lnp、.d和.axf:调试文件
.opt:保存工程配置信息
.bak:工程备份文件

⑼ KEIL 中关于预编译的问题(重复包含)

“两个源文件file1.c和file2.c都会将file.h插入进去吗?”
不会,只插入一次。

“这样写不就是为了不重复包含吗?”
对呀,你不是很明白吗。

“如果只在两个当中的一个插入file.h,假设file1.c,那我file2.c中用到了file.h中的函数,不是会出现未定义的错误吗?”
怎么会呢,此时这个函数对于工程而言已经被定义了呀。

用你的例子给你讲解一下。开始编译以后,假设先编译file2.c,则file2.c会包含file.h并载入其中的所有声明以及宏定义,包括#define _FILE_H_;编译完file2.c后开始编译file1.c,此时从file2.c会再次包含file.c,但因为_FILE_H_已经定义过,就不会执行判断条件之后的头文件内容。通过这样的方式就能避免重复定义。

⑽ KEIL C51多文件编译

首先主函数只能存在于一个文件中,这个文件可以直接取名mian.c这样比较方便管理。然后按功能分其它文件,分别编写XX.h和XX.c文件,在XX.h中写入函数的声明和全局变量的定义,在XX.c中写函数的具体内容,并且在XX.c中要include“XX.h”,在mian.c中include所有的.h文件。这样就可以正常编译和烧写了。最终生成的还是一个hex文件

阅读全文

与keil编译出两个相同的文件相关的资料

热点内容
解压小熊手机壳 浏览:344
成都市区建成面积算法 浏览:660
智能家居单片机 浏览:97
买男装用什么app好 浏览:855
文件夹合并了怎么拆开 浏览:259
波段副图源码无未来函数 浏览:86
livecn服务器地址 浏览:257
程序员这个工作真的很吃香吗 浏览:846
程序员和数学分析师待遇 浏览:680
压缩气弹簧怎么拆 浏览:321
华为公有云服务器添加虚拟ip 浏览:211
程序员和运营哪个累 浏览:26
抖音安卓信息提示音怎么设置 浏览:456
光速虚拟机的共享文件夹 浏览:248
程序员培训机构发的朋友圈真实性 浏览:744
天干地支简单算法 浏览:299
下载个压缩文件 浏览:300
普通人电脑关机vs程序员关机 浏览:630
米酷建站源码 浏览:115
氢气app怎么搜搭配 浏览:619