我对在 C 编程语言中使用全局变量有一些疑问。这些天来,我从来没有太多不再使用全局变量。所以,我的问题是:在 C 中何时使用或不使用全局变量?有人可以给我一些解释吗?性能问题,当然,应该包括在内。
一个更具体的案例来帮助回答这个问题:例如,如果我有一个包含struct
s 的全局数组,几乎所有函数都可以通过程序访问,我需要在每个函数调用中获取这个数组的两个成员。在这种情况下,我需要为这个数组中我想要访问的成员创建两个变量(指针)。像这样foo_t *x,*y
。在程序运行时,它会发生多次并且在不同的功能中发生。x
在这种特定情况下,应该是y
全局变量还是局部变量(调用它的每个函数)?
有些人认为这对计算机的内存和程序性能来说太昂贵了。
我希望这很清楚。