什么叫外部变量内部变量

嘿,谈论外部变量和内部变量真是令人困惑。
2 02 2 年,我在某城市参加编程培训班,当时就听到老师在讲这两件事。

外部变量在程序内自由漫游,在函数外部定义。
从它产生的那一刻起直到整个程序结束,它都在那里并且可以随时被任何函数调用。
就像北京天安门广场有一个巨大的广告牌。
从早到晚,无论有多少人经过,都能看到它。

存储位置怎么样?编译时,它被放置在一个称为静态存储的地方,这就像为每个变量分配一个永久的家。
无论程序如何运行,它都会定期存在。

但有时,我们必须在其他文件中使用它。
现在我们必须用 extern 来声明它以扩大其范围,就像将广告牌移到另一个城市以便每个人都可以看到它一样。

另一方面,如果我们不想让它太自由的话,我们可以用static来限制它,让它只挂在这个文件里,不能到处走。

对于内部变量来说,它就像函数内部的一个小秘密。
它仅在定义它的函数内部有效。
一旦出了门,它就不复存在了。
就像办公室的内部文件一样,只有办公室的人才能查看。

它存储在栈区,就像每个函数都有自己的小抽屉一样。
一旦调用此函数,抽屉就会打开并放置一些东西;一旦函数返回,抽屉就会关闭,所有东西都会消失。

所以,如果我们利用好这两个变量,我们可以更好地控制程序的作用域和数据访问。
这就像为演出穿上合适的衣服一样,既方便又美观。
当时我很困惑,但后来我意识到也许我太极端了。

局部变量和全局变量的区别 局部变量和全局变量的区别是什么

局部变量和全局变量的区别如下:
1 .定义位置不同 局部变量:在函数内定义 全局变量:在函数外部定义
2 .多种内存存储方式 局部变量:存放在栈区,使用后删除。
全局变量:存储在全局区,程序结束后才删除
3 .不同的人生阶段 局部变量:函数完成后消失 全局变量:存在于程序的整个生命周期
4 .用途多样 局部变量:只能在定义的地方使用 全局变量:可以在整个程序中使用
5 .作用域不同 局部变量:在函数内有效 全局变量:对整个文件有效
6 .初始化的差异 局部变量:必须手动初始化 全局变量:默认值为零。

7 .同名处理 局部变量和全局变量可以同名 但是函数中的局部变量会覆盖全局变量
我上周刚做一个项目,我的全局变量的问题就是由这几点引起的。
你怎么认为?