电工学习网

 找回密码
 立即注册
查看: 1639|回复: 0
打印 上一主题 下一主题

C语言开发单片机为什么大多数都采用全局变量的形式?

[复制链接]
跳转到指定楼层
楼主
发表于 2020-6-25 07:48:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
   个人理解,从编码规范的角度来讲,过多的全局变量其实并不是好的习惯。但全局变量如果作为控制块,静态内存等场景使用,还是非常高效方便,避免了反复malloc,对控制碎片,提高运行效率都有帮助。
   c语言应用几个阶段,最开始是全局变量,只还是处于人类吹毛饮血阶段,到后来发现全局变量不好管理,把全局变量放入结构体来使用,恭喜进入石器时代,后来发现结构体跟全局也差不多,然后把要使用结构体类型化,加入结构体指针,函数调用把参数用结构体指针传入,此时进入帝王时代,慢慢的发现程序大了后,这些结构体不好管理,发现很多时候很多函数或功能需要重入,此时慢慢发现,高级语言的面向对象可以借鉴一下,于是把要实现的功能模块化,此时在编写时,大部分程序是没有全局变量的,只是使用各种类型化的结构体指针,而使用这些模块的时候,根据情况临时实例化这些结构体指针,如果是动态申请内存,或临时实列结构体指针,此时程序没有所谓的全局变量,就好比Linux内核的风格。。这是才是c语言该有的写法,这才说你进入近代了,才可以说懂了c语言了,不是精通。。你给我说全局变量好。。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

电工学习网 ( )

GMT+8, 2024-4-26 04:42

Powered by © 2011-2022 www.diangon.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

快速回复 返回顶部 返回列表