以我的浅薄直观理解,static的作用就相当于一个取平均:
它作为全局变量前缀时,会使得缩小其作用域至其原文件,在其他文件无法使用该变量:

在这里我定义一个全局静态变量example,但在其他文件使用时:

说明这里用不了example
当它作为局部变量的前缀时,可以延长其生命周期。因为是静态储存方式,在函数或复合语句结束时,它变的不可见,但依然存在,当函数或复合语句再次被调用时,静态局部变量不会被再次初始化(这个特性也就常被用于统计函数被调用的次数),而是保持上次的原样。
总之,添加上static,缩小了全局变量的作用域,延长了局部变量的生命周期,因此我说它像是个”去平均“。
本文解释了静态变量如何通过控制全局变量的作用域使其仅在原文件可用,以及如何作为局部变量延长生命周期并用于函数调用计数。作者将static比作去平均,强调其在代码组织中的影响。
128





