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

如题所述

如下:

1、作用域不同:全局变量的作用域为整个程序,而局部变量的作用域为当前函数或循环等。

2、 内存存储方式不同:全局变量存储在全局数据区中,局部变量存储在栈区。

3、生命期不同:全局变量的生命期和主程序一样,随程序的销毁而销毁,局部变量在函数内部或循环内部,随函数的退出或循环退出就不存在了。

4、使用方式不同:全局变量在声明后程序的各个部分都可以用到,但是局部变量只能在局部使用。函数内部会优先使用局部变量再使用全局变量需要注意一点的是,局部变量不能赋值为同名全局变量的值。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-12-01
它们的区别在于变量作用范围的不同。一般来说,全局变量的影响范围是要大于局部变量的,而局部变量一般只作用于一个块级作用域,比如循环体、函数体之类的。本回答被网友采纳
第2个回答  2021-12-31

    全局变量:其作用范围是“整个项目”,只需在一个源文件中定义,就可以作用于所有的源文件。当然,其他不包含全局变量定义的源文件需要用extern 关键字再次声明这个全局变量,作用域大

    局部变量:仅仅从定义的位置开始,到定义它的右花括号结束,只在函数执行期间存在,函数的一次调用执行结束后,变量被撤销,其所占用的内存也被收回,作用域小