c 多文件全局变量_extern如何用?如何统一管理全局变量。

本文首发于公众号:大鱼机器人,公众号上有我的私人联系微信。

我是这样用extern的...​mp.weixin.qq.com
v2-2d9ceed78978badf52f685b50ced44c6_ipico.jpg

0 、前言

在交流群中有位哥们问了这个问题,我觉得很有意思。

f807c7fdf17e8fef19a48c984626b4ea.png

1 、 一般如何处理全局变量

众所周知,我们一般对于全局变量,都是在一个.C或者.H文件中定义。

如果在其他文件中需要使用的时候,只需要extern即可。

例如:

在A文件中定义的全局变量:int test ;

如果在B文件中需要使用的时候:extern int test ;

...这样下来,需要使用该数据时,每个文件中都需要再次声明。

十分不爽!!!

2 、我们可以换一种方式

第一步:在main.c中进行所有变量的初次定义

第二步:在一个.h文件中对全局变量进行extern

第三步:程序中的每个文件都去包含此.h文件

这样我们就能一次性管理所有的全局变量~

3 、以STM32为例

第一步:在main.c中进行初次变量的定义

191dc045d4e32a48878feee5eaaaf8e9.png
(图一)

第二步:在sys.h文件中对全局变量进行extern

8cb043bde138de71daa660e65edcab74.png
(图二)

第三步:程序中的每个文件都去包含此.h文件

9e80da5b82930b485d69080cbf59e307.png
(图三)

61b8213490ab8e46c031c48a0279958a.png
(图四)

同理,在包含一些头文件的时候也可以这样处理。

我们可以看图二,基本上把所有的全局变量和需要包含的头文件都放在sys.h中。

最后,在程序中,每个文件都包含sys.h,想要删减和修改变量以及头文件,都可以在此文件夹中修改。

个人觉得,这样管理起来特别方便且美观。

注:上述示例代码是我自己写的一款平衡小车的代码,公众号后台回复[大车]即可获取

3 、 最后

若觉得文章对你有帮助,随手点“在看”、转发分享,也是我继续更新的动力。

2d1f5138b124dd2a434df9d444675091.png

长按识别图中二维码关注

推荐阅读:

PCB工程师的7个好习惯

哇,电路中居然放了0欧的电阻!!!

//end
记得给我点赞嘛~我给你分享干货~

//end


公众号上有我的联系方式哦~

除此之外,5T资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,PCB、FPGA、DSP、labview、单片机、等等!

在公众号内回复「更多资源」,即可免费获取,期待你的关注~(放部分资料截图)

bcb4ecc4e4138f01302c0ed3239852c4.png

1f0985f43e555b58374d9dea9dcf9989.png
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值