[学习资料] static 全局变量与普通的全局变量有什么区别?

[复制链接]
3354|74
朝生 发表于 2025-7-18 18:26 | 显示全部楼层
static全局变量在程序运行期间只初始化一次,而普通全局变量每次调用都会初始化。
jdqdan 发表于 2025-7-21 17:28 | 显示全部楼层
static全局变量在程序运行期间只初始化一次,普通全局变量每次函数调用都会初始化。
OKAKAKO 发表于 2025-7-23 22:34 | 显示全部楼层
全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式。
wex1002 发表于 2025-8-5 19:41 | 显示全部楼层
没初始化的全局变量默认0,一旦赋新值,旧值丢失。
未来AI 发表于 2025-8-6 16:07 | 显示全部楼层
对,静态变量在文件内部可见,即使文件名相同,也互不干扰。
天天向善 发表于 2025-8-8 13:01 | 显示全部楼层
静态变量用于实现跨文件数据共享,便于全局状态管理。
天天向善 发表于 2025-9-4 08:31 | 显示全部楼层
静态全局变量如果没显式初始化,单片机会默认将其置为0。这能确保变量从0开始计数,避免意外值影响程序。
小熊01 发表于 2025-9-4 22:15 | 显示全部楼层
静态全局变量只在声明时初始化一次,后续使用不会重新赋值。而普通全局变量每次在函数中被引用时会重新赋值。
LLGTR 发表于 2025-9-8 19:51 | 显示全部楼层
静态变量未初始化默认为0,无需手动赋值。
星闪动力 发表于 2025-9-9 10:25 | 显示全部楼层
全局状态是跨文件共享的,可以让不同文件间的程序或模块共享相同的数据。
芯路例程 发表于 2025-9-13 09:58 | 显示全部楼层
静态全局变量只能在定义的文件里被访问,就像它藏在一个只有自己能进的房间,存储在电脑的硬盘上,不会让其他文件知道它的存在。
zephyr9 发表于 2025-9-13 23:40 | 显示全部楼层
静态变量作用域在定义文件内,常驻内存,与程序生命周期绑定;而普通变量作用域全局,存储在堆栈,随函数调用而变化。
哪吒哪吒 发表于 2025-9-18 15:15 | 显示全部楼层
生存期就是变量活多久,作用域就是变量能去哪儿。
IntelCore 发表于 2025-10-6 17:08 | 显示全部楼层
这应该是指用于在多个文件间共享的变量或数据结构,比如在多文件项目中维护相同的状态信息。
Pretext 发表于 2025-10-7 16:58 | 显示全部楼层
描述要包括对象的生命周期和它在程序中的影响范围。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部