在C中初始化全局变量和静态变量

在C语言中,全局变量静态变量都必须使用常量值进行初始化。这是因为在执行开始之前必须知道这些变量的值。如果未为全局变量和静态变量提供常量值,则会生成错误。

演示全局和静态变量初始化的程序如下。

示例

#include <stdio.h>

int a = 5;

static int b = 10;

int main() {

   printf("The value of global variable a : %d", a);

   printf("\nThe value of global static variable b : %d", b);

   return 0;

}

输出结果

上面程序的输出如下。

The value of global variable a : 5

The value of global static variable b : 10

现在,让我们了解以上程序。

全局变量a的值为5,静态变量b的值为10。因此,此程序可以按要求工作。

如果不使用常量来初始化全局变量和静态变量,则将导致错误。演示此的程序如下。

#include <stdio.h>

int func() {

   return 25;

}

int main() {

   static int a = func();

   printf("%d ", a);

}

上面的程序导致错误“初始化元素不恒定”。因此,全局变量和静态变量仅应使用常量初始化。

以上是 在C中初始化全局变量和静态变量 的全部内容, 来源链接: utcz.com/z/360648.html

回到顶部