局部变量和全局变量之间的差异

在本文中,我们将了解局部变量和全局变量之间的区别。

局部变量

  • 通常在函数内部声明它。

  • 如果未初始化,则将垃圾值存储在其中。

  • 在函数开始执行时创建。

  • 功能终止后,它将丢失。

  • 由于可以通过单个功能访问局部变量/数据,因此无法进行数据共享。

  • 需要将参数传递给局部变量,以便它们可以访问函数中的值。

  • 除非另有说明,否则它将存储在堆栈中。

  • 可以使用声明它们的函数中的语句来访问它们。

  • 当对一个函数中的局部变量进行更改时,这些更改不会反映在另一个函数中。

  • 局部变量可以在声明它们的函数内部的语句帮助下进行访问。

示例

以下是一个例子-

#include <stdio.h>

int main () {

   /* local variable declaration */

   int a, b;

   int c;

   /* actual initialization */

   a = 10;

   b = 20;

   c = a + b;

   printf ("value of a = %d, b = %d and c = %d\n", a, b, c);

   return 0;

}

全局变量

  • 它在函数外部声明。

  • 如果未初始化,则默认将零值存储在其中。

  • 它是在程序的全局执行之前创建的。

  • 程序终止时它将丢失。

  • 由于多个功能可以访问全局变量,因此可以进行数据共享。

  • 它们在整个程序中都是可见的,因此不需要传递参数。

  • 可以使用程序中的任何语句来访问它。

  • 它存储在程序内部的特定位置,该位置由编译器决定。

  • 当在一个函数中对全局变量进行更改时,这些更改也将反映在程序的其他部分。

示例

以下是一个例子-

#include

/* global variable declaration */

int g;

int main () {

   /* local variable declaration */

   int a, b;

   /* actual initialization */

   a = 10;

   b = 20;

   g = a + b;

   printf ("value of a = %d, b = %d and g = %d\n", a, b, g);

   return 0;

}

以上是 局部变量和全局变量之间的差异 的全部内容, 来源链接: utcz.com/z/345877.html

回到顶部