您当前的位置: 首页 > 

张巧龙

暂无认证

  • 3浏览

    0关注

    1208博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

我是这样用extern的...

张巧龙 发布时间:2019-04-09 09:38:07 ,浏览量:3

点击上方“大鱼机器人”,选择“置顶/星标公众号”

福利干货,第一时间送达!

640?wx_fmt=gif

640?wx_fmt=jpeg

阅读文本大概需要 2 分钟。

  0  

 前言

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

640?wx_fmt=jpeg

  1  

 一般如何处理全局变量

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

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

例如:

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

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

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

十分不爽!!!

  2  

 我们可以换一种方式

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

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

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

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

  3  

 以STM32为例

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

640?wx_fmt=png

(图一)

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

640?wx_fmt=png

(图二)

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

640?wx_fmt=png

(图三)

640?wx_fmt=png

(图四)

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

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

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

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

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

  3  

 最后

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

640?wx_fmt=jpeg长按识别图中二维码关注

推荐阅读:

PCB工程师的7个好习惯

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

//end

这么“好”的文章, 转发+收藏~

关注
打赏
1665727216
查看更多评论
立即登录/注册

微信扫码登录

0.0464s