搜索
写经验 领红包
 > 设计

c语言变量的生命周期(c语言变量的作用域和生命周期)

导语:C语言变量的生命周期,如何定义全局变量?

c语言变量的生命周期(c语言变量的作用域和生命周期)

全局变量

C语言提供了全局变量的定义,全局变量也称为:外部变量。全局变量就是定义在函数外的变量。它不属于大括号{}包含的某个代码块,所以,它的作用域不是在某个代码块内,是在整个源程序中。所以,可以在源程序中任何地方访问全局变量。

由于全局变量是属于整个源程序,所以,它的生命周期也是整个程序的生命周期。那么,只要程序运行没有结束,全局变量的生命周期就不会结束。

所以,在整个程序运行的过程中,都可以使用全局变量。

如下是一个程序测试例子:

程序运行结果如下:

可以看到,我们在函数外面定义了全局变量a,在main函数、func函数、func1函数中都可以使用全局变量a。全局变量的作用域就是整个源程序。当执行了func(1)函数调用之后,退出func函数,全局变量a并没有被销毁,因为全局变量的生命周期是整个程序的运行过程。那么,我们可以总结如下:

(1) 全局变量的作用域,在整个源码范围内;

(2) 全局变量的生命周期,在整个程序运行过程中;

如果局部变量和和全局变量定义的变量名相同,那么,在定义局部变量的代码块内,优先使用局部变量,如下是测试的例子。

程序运行结果如下:

可以看到,定义了局部变量x和全局变量x,变量名相同,但是,在定义局部变量在代码模块中,优先使用同名的局部变量。所以,在main函数中,优先使用局部变量x。

本文内容由小故整理编辑!