一个函数内部定义的变量称为()它存放于()存储区,在函数外部定义的变量称为(),它存放于()存储区

如题所述

一个函数内部定义的变量称为局部变量即内部变量,它存放于动态存储区,在函数外部定义的变量称为外部变量即全局变量,它存放于静态存储区。

外部变量为在函数外部定义的全局变量,它的作用域从变量的定义处开始,到本程序文件的结尾。在此作用域内,全局变量可为各个函数所引用。编译时将外部变量分配在静态存储区。

局部变量的作用域为定义该变量的函数或定义该变量的复合语句。局部变量的生存期是从函数被调用的时刻算起到函数返回调用处的时刻结束。



扩展资料

全局变量从程序运行起即占据内存,在程序整个运行过程中可随时访问,程序退出时释放内存。与之对应的局部变量在进入语句块时获得内存,仅能由语句块内的语句访问,退出语句块时释放内存,不再有效。

局部变量定义后不会自动初始化,除非程序员指定初值。全局变量在程序员不指定初值的情况下自动初始化为零。在同一源文件中,允许全局变量和局部变量同名。在局部变量的作用域内,全局变量不起作用。

有时需要在其他文件中使用extern来声明全局变量,以扩展全局变量的作用域。 也可用static声明全局变量,使该变量不能被其他文件引用。在B语言、C语言和一些其它派生的语言(如C++)中,外部变量即外部的变量。

参考资料来源:百度百科-局部变量

参考资料来源:百度百科-外部变量

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-11-11
函数内部是自动变量,存放在动态存储区
函数外是全局变量,存放在静态存储区本回答被网友采纳
相似回答