局部变量和全局变量之间的区别
computer programmingprogrammingmiscellaneous更新于 2024/11/18 17:58:00
在本文中,我们将了解局部变量和全局变量之间的区别。
局部变量
它通常在函数内部声明。
如果未初始化,则会在其中存储垃圾值。
它是在函数开始执行时创建的。
它在函数终止时丢失。
由于局部变量/数据只能由单个函数访问,因此无法进行数据共享。
需要将参数传递给局部变量,以便它们可以访问函数中的值。
除非另有说明,否则它存储在堆栈中。
可以使用函数内的语句访问它们声明它们的位置。
当对函数中的局部变量进行更改时,更改不会反映在另一个函数中。
可以在声明它们的函数内借助语句访问局部变量。
示例
以下是示例 −
#include <stdio.h> int main () { /* 局部变量声明 */ int a, b; int c; /* 实际初始化 */ a = 10; b = 20; c = a + b; printf ("a = %d、b = %d 和 c = %d 的值
", a, b, c); return 0; }
全局变量
它在函数外部声明。
如果未初始化,则默认将零值存储在其中。
它在程序全局执行之前创建。
程序终止时它将丢失。
由于多个函数可以访问全局变量,因此可以共享数据。
它们在整个程序中都可见,因此不需要传递参数。
可以使用程序中的任何语句访问它。
它存储在程序内部的特定位置,由编译器决定。
当在一个函数中对全局变量进行更改时,这些更改会反映在程序的其他部分中
示例
以下是示例 −
#include /* 全局变量声明 */ int g; int main () { /* 局部变量声明 */ int a, b; /* 实际初始化 */ a = 10; b = 20; g = a + b; printf ("value of a = %d, b = %d and g = %d
", a, b, g); return 0; }