将几个文件连接 c语言 单片机

有3个文件:main.c a.c a.h 写单片机程序时在keil里为什么是这么连接文件的:在main.c里写#include "a.h" 在a.c里面写#include "a.h" 。学C语言时用VC写的时候是这样的:在main.c里写#include "a.c" 在a.c里面写#include "a.h"。。。。keil里写不应该在main.c里写#include "a.c"吗?

#include“a.c”的意思就是将a.c里面的代码复制到 #include所在的位置,这样编译 的话,a.c就不能包含到keil工程里,否则就出现同样的函数编译两次。而且a.c只能被调用一次,没调用一次就会编译一次。会重复编译。所以a.c最好不要被调用,而是放进keil中单独编译,如果想用其中的函数和变量,可以声明。
比如a.c中含有 int a;
那么main.c想读写这个变量 只要在开头加一句 extern int a;而且extern int a;写多少次都没事
这样main.c就可以用了,而不需要再次int a会重复。
而a.c中的全局变量很多,不可能每次某个.c想用就extern 一次,所以a.h的作用就是把所有的extuern变量写在里面。然后在#include“a.h”将里面的内容替换到头文件位置,效果一样。
温馨提示:内容为网友见解,仅供参考
无其他回答

单片机Keil C51 C语言多文件如何使用全局位变量?跪拜!!
extern就可以。在一个文件里定义:bdata m;sbit x=m^1;然后在另一个文件里声明:extern bdata m;(如果不使用m可以不声明。)extern bit x;这样就可以使用了。如果变量较多,建议楼上的方法,用全局头文件。

51单片机一个工程中包含多个C文件怎么使用
这是标准的C语言写法。1. 不管有多少个函数,C总是从main()主函数开始执行。2. 至于你说的一个工程里面包括多个.c的文件,其实每个.c的文件里就是一系列函数而已。如果你要使用这些函数的话你要在头文件里加入#include。比如我要用“init.c”这个文件,则头文件中除了#include"reg51.h"你还要加...

单片机开发调试c语言程序时,下载至单片机的文件扩展名是
hex。单片机的C语言采用C51编译器(简称C51),由C51产生的目标代码短,运行速度高,存储空间小,下载至单片机的文件扩展名是hex。单片机又称单片微控制器,不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。

用89s51设计1个记录时间间隔并显示的电路图
可以肯定的说,最好的C语言单片机工程师都是从汇编走出来的编程者因为单片机的C语言虽然是高级语言,但是它不同于台式机个人电脑上的VC++什么的单片机的硬件资源不是非常强大,不同于我们用VC、VB等高级语言在台式PC上写程序毕竟台式电脑的硬件非常强大,所以才可以不考虑硬件资源的问题。 以8051单片机为例讲解单片机的引...

一个完整的单片机c语言程序包含哪几个部分?
个人觉得,一个完整C程序至少应该包含头文件、初始化、主程序四个部分,头文件是程序编译预处理的重要组成部分,缺了它就无法生成目标代码;初始化部分包含变量初始化和端口初始化;主程序是一个C程序的核心代码,由此执行或调用一些具有特定功能的函数模块以完成程序的预设功能。

单片机怎么让几个c语言程序生成一个hex文件
bool CWavelet::WaveDec(double *pSrcData,\/\/要分解的信号 double *pDstCeof\/\/分解出来的系数

一个C语言源程序可以由几个文件组成?
1、一个C语言源程序可以由一个或多个源文件组成。2、每个源文件可由一个或多个函数组成。3、一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。是整个程序的入口。4、源程序中可以有预处理命令(包括include 命令,ifdef、ifndef命令、define命令),预处理命令通常应放在源...

单片机和C语言有什么关系吗
语法、运算符和变量规则都一样,由于CPU不同,所以库函数都不一样。在普通C中常用的头文件是stdio.h,在单片机(51为例)常用的头文件是reg51.h或reg52.h。单片机面向的是硬件环境更多一些。常用函数printf,普通C中输出到屏幕,单片机中输出到串口。等等,具体的需要自己去挖掘。

单片机编程和c语言编程有啥区别,是不是只有头文件有点差别
1)单片机编程是针对单片机的编程操作,常用的51、AVR、STM32等单片机都支持C语言,但是有很多ROM和RAM都很小的单片机一般只支持汇编语言。同时由于不同内核单片机的架构区别较大,厂家都会对标准C语言进行适当扩充,这样就导致不同内核单片机的C语言之间存在一些别,移植的时候就不仅仅是更改一下头文件那么...

如何将C语言程序烧进芯片
,记住COM的编号。2、打开烧录软件,在”单片机型号“选择要烧录的单片机的型号,然后再串口号选择查好的COM的编号。3、点击“打开程序文件”。选择要烧录的程序的文件夹,找到用编程软件生成的“hex”文件。选择程序的运行频率,通常是11、0592兆赫 。4、点击软件界面中的“下载”按键,或 ...

相似回答
大家正在搜