首 页 行业资讯 新车 试驾评测 养车用车 车型库

C语言中的,全局变量与局部变量的区别?

发布网友 发布时间:2022-04-21 19:22

我来回答

2个回答

热心网友 时间:2023-07-02 01:42

首先变量一般分为局部和全局,木有整体一说。
根据c语言的说法,局部变量:定义在方法内部的变量叫局部变量;全局变量:定义在方法外部的变量叫全局变量。局部变量和全局变量的主要区别在于二者的生存周期不同。
全局变量的生存周期:静态分配内存,程序运行期间常驻内存,直到程序运行结束。
局部变量的生存周期:动态分配内存,位于线程堆栈中。
另外全局变量和局部变量的作用域不同,举例来说,类中的变量作用域在当前类中,类方法中的变量作用域在当前方法中。
全局变量的使用场景:多个地方需要使用,大家共享。
局部变量的使用场景:只在当前这个地方使用。

热心网友 时间:2023-07-02 01:42

局部变量的作用域仅为离他最近的大括号内,超出这个范围无效!全局变量在整个文件中都有效!但是如果局部变量若与全局变量有重复,在局部变量作用域内以局部变量为准!局部变量在作用域大括号结束后便释放存储空间,全局变量随整个程序的消亡而释放存储空间!
在你这个程序中首先运行了sub1,便更改了a[10]的值为0
2
4
6
8
10
12
14
16
18;而sub2中因为a[MAX]
为局部变量在执行完sub2后便释放了存储空间,不会对全局变量a[10]的值产生影响,因此运行sub2();sub3(a);显示结果为0
2
4
6
8
10
12
14
16
18

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com