问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我要在keil中头文件声明和C文件定义头文件中的变量,可是我在头文件中声明后再到C文件中定义的时候

发布网友 发布时间:2022-04-24 12:43

我来回答

3个回答

热心网友 时间:2023-10-13 05:04

是这样的,通常,变量的定义是放在C文件里,而不是头文件里,C文件定义,头文件引用。
比如,你在X.c定义一个变量 unsigned char a;如果你想要在Y.C文件里使用这个变量,你可以在Y.C里引用,引用方法如下:extern unsigned char a;
你也可以在一个头文件里引用,引用方法是一样的:extern unsigned char a;
在头文件引用后,凡是包含了这个头文件的C文件,都可以使用那个变量a,而不必再另外引用了。
有一点要注意,引用的时候,不可以带初始化,例如,X.c文件里这样定义的变量:
unsigned char a = 100; 定义的时候可以初始化,在头文件或者其它C文件引用的时候,不能初始化,妈extern unsigned char a = 100;这是不可以的,直接引用就行了:extern unsigned char a;

热心网友 时间:2023-10-13 05:05

#ifdef MODULE_ANALOG

volatile signed int LatestCCI = 0; // most recent value of Instantaneous CC conversion
signed long CCoffset = 0x0000; // this is SUBTRACTED to EACH sample from the CC Accum.
signed int CCIoffset = 0; // this is in mA and is ONLY SUBTRACTED to the 1-second total, NOT TO EACH SAMPLE.

unsigned char FastRCCal = 0;
unsigned int SlowRCCal = 0;
unsigned char BGCCRCal = 0;
unsigned char ThermistorSelect = 0;
unsigned char CellToBalance = 0;
unsigned int cell_current[4]; //used for impedance measurement
signed long RunningAcc = 0;

#else

extern volatile signed int LatestCCI;
extern unsigned char FastRCCal;
extern unsigned int SlowRCCal;
extern unsigned char BGCCRCal;
extern unsigned char ThermistorSelect;
extern unsigned char CellToBalance;
extern unsigned int cell_current[4];
extern signed long RunningAcc;

#endif

热心网友 时间:2023-10-13 05:05

声明有没有加 extern呢追问加了哦

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
月经不尽褐色的是怎么回事 月经前后有褐色分泌物是什么原因 二十四节气的重要意义24节气在生活中的作用 你来我往,猜一个数字? 姓谭女孩起什么名字最优雅 男孩姓谭的好名字 黄家驹在beyond的地位 黄家驹是Beyond的主唱吗? 老板对员工的新年微信 每次感冒和一些小毛病,我都是选择运动出身汗,让它自然好,请问这种方 ... keil中pdata是关键字吗 keil c51优化等级介绍 keil 处理浮点数问题。 如何保证全部变量不被优化 keil 为什么keil 不加volatile也没问题 怎样在手机里的word 二手房使用公积金贷款最低首付比例是多少? 二手房首付比例是多少? 安卓手机里的word文档在哪个文件夹 二手房按揭贷款首付多少? 二手房的贷款首付一般需要多少 买二手房首付怎么算,比如买55万的房子,首付多少,税费一共要交多少?可以贷款多少? 二手房一般最低首付多少? 目前想买二手房,按揭贷款的话首付最低要付多少? 如何用柚子皮除臭? 柚子皮有什么作用?可以用来除臭吗? 梦见自己把车开到井口上面过不去了大家帮忙才倒出来! 梦到把自己的车开上绝路然后外力导致车开不下来 梦见自己把车停在乡村路中间挡着别人的车什么意思? 梦见我把车开到田里了什么意思? Keil uVision5为何编译时,不产生“变量在使用前未赋初值(is used before its value is set)”的警告? volatile到底有没有用? keil uvision4 用c语言编译没有错误,但是个别语句被忽略了没有编译成汇编语言。怎么回事啊? keil软件里面c语言包含哪些头文件?做什么用的?尽量多列举点 keil奇怪问题 keil C code区 数组定义问题 keil c51中如何在中断中改变全局变量的值? Keil C51下如何让编译器优先使用片内RAM keil主函数循环体可以单步调试吗?比如: keil里面为什么if条件满足了,但里面有一调语句执行不了? c语言*(volatile unsigned char xdata *) 0x2f5f,这个表示方法是什么意思? 单片机keil编程-流水灯-的问题 keil+proteus仿真arm,keil设置导致串口乱码问题 小米手机锁了怎么恢复出厂设置 小米手机忘记了锁屏密码怎样恢复出厂设置? 我的小米手机恢复出厂设置后就设备锁锁住了。小米帐号密码也忘记了。 小米手机设备锁锁了恢复出厂设置设备还是锁着吗? 我的苹果手机打电话听筒里面怎么有杂音? 为什么苹果xs通话时会有杂音? 求军婚完结小说,甜宠无虐,越多越好。 带上详细的介绍。 最好是自己看...