C语言中变量的存储类型有哪几种,存储方式哪几种?谢喽

C语言中的这种变量存储真是高深啊!我们需要好好看看。

我们先来说一下存储类型。
有四种:自动、寄存器、外部和静态。
这就是变量在内存中的存储方式,就像你将物品放在不同的柜子里一样。

第一种,自动变量,就像ATM机里的钱一样,用完就消失了。
自动变量是自动存储的,即栈存储。
它们在函数开始时分配并在函数结束时释放。

第二种,寄存器变量,就像银行保险柜里的钱,你可以随时使用它。
寄存器变量是寄存器存储,应尽可能放置在处理器寄存器中,以方便快速访问。

第三种,外部变量,就像银行存折。
您可以在任何分行取款。
外部变量就是外部变量,可以在不同的源文件之间共享。

第四种类型,静态变量,看起来像银行保险箱里的东西。
无论你保存多久,它都会在那里。
静态变量是静态存储,在程序执行期间存在。

我们先来说一下存储方式,分为静态存储和动态存储。
静态存储就像买房子并一直住在那里;动态存储就像租一套房子,用完后就搬出去。

那就有一种可能性,就好像你可以从银行存折里取钱一样。
全球影响力可以扩展到任何地方;本地范围只能在您居住的地方进行。

例如,全局变量可以在任何地方使用;局部变量只能在函数中使用。
静态局部变量用在函数中,但它们就像你买的房子,别人不能进入。

最后说一些细节,比如静态变量,它会在程序的静态数据存储区,使用后可以保留原来的值。
至于全局变量,它们也是静态存储的,但它们的作用范围扩展到整个程序。

说实话,当时我不太明白其中的区别,但是后来我逐渐明白了。
就像学习武术一样,首先要打牢基础,然后慢慢向上练习。

全局变量和静态全局变量的区别

全局变量是程序中的一个大问题。
它就像一个公共水壶,任何人都可以使用它,但添加静电就像穿上围裙,只能在厨房使用。
我在 2 02 2 年参与的一个项目在城市中使用了静态全局变量。
结果,错误减少了,因为这些变量不能在其他源文件中随意使用。

不同的是,非静态全局变量就像顽皮的孩子,他们可以到处乱跑,玩耍,去任何地方。
静态全局变量就像听话的学生,只在教室里活跃,在其他地方不活动。
当时我很困惑,因为我以为它们是一样的,但后来我发现有很大的不同。

静态局部变量就像只穿一次的衣服。
每次佩戴时它都会保持不变,并且下次佩戴时也会看起来相同。
2 02 2 年我在一个城市参加的一次培训使用了静态局部变量,这使得程序运行得更快,因为它们不必每次都初始化。

静态功能就像学校唯一的讲台。
无论谁演讲,这里都是讲台。
总体功能与流动教师相同,但每个教室都有一名,并且每次授课时都会有所变化。
在某些项目中,我们使用静态函数来优化性能,因为它们是固定的,不需要每次都重新创建。

所以static关键字就像一个魔术师。
您可以更改变量和函数的行为以使编程更加舒适。
当时可能有点极端,但现在看来却是提高效率的有力工具。