全站数据
8 4 2 0 5 8 1

为什么要设置全局变量为0

真话财经 | 简单学习,快乐成才!         
问题更新日期:2024-10-14 15:35:05

问题描述

为什么要设置全局变量为0希望能解答下
精选答案
最佳答案

全局量在定义的时候,编译器会自动进行初始化。如果指针就给初始化为NULL,

整型、char型变量就给初始化为0

如果你没有给它赋过值,那么它默认值就是NULL(空)或0

--------------------------------------------

不知道你怎么写的。

不过下边两个语句最好写在.c中。

static struct data *ep;

static struct data *head;

如果你写在.h中,然后在两个或多个.c中包含了该.h文件,那么就相当每个.c文件都各自定义了中两个指针。因为static变量的作用域是当前文件。

如果要在整个工程使用改全局量,那么请像下边这么做:

a.c文件:

struct data *ep;

struct data *head;

b.c文件:

extern struct data *ep;

extern struct data *head;

c.c文件:

extern struct data *ep;

extern struct data *head;

其他文件也同样,这样在工程 任何地方用这两个指针都不会有问题。