c语言全局变量释放问题

我在一段code中开始定义了两个全局变量:FILE*file=NULL;char*g_servicename;一个是FILE指针,一个是字符指针,之后会在一些方法中对这两... 我在一段code中开始定义了两个全局变量:
FILE *file = NULL;
char *g_servicename;
一个是FILE指针,一个是字符指针,
之后会在一些方法中对这两个变量赋值,最后需要在一个方法中对这两个变量释放,以备下一次调用这个code时,可以重新对全局变量赋值,有两个问题:

1、对于这三个全局变量的声明定义处:
FILE *file = NULL;
char *g_servicename;
unsigned long debugtime = 0;
是否正确?需不需要写成char *g_servicename="";或char *g_servicename=NULL;或char *g_servicename=0;?

2、在释放这两个全局变量的方法中,使用如下方式是否正确:
file = NULL;
g_servicename = 0;
debugtime = 0;

对于servicename,使用如下方式是否等价呢?
servicename = "";
servicename = 0;
servicename = NULL;

谢谢指点!
展开
 我来答
cgiggle
2009-11-22 · TA获得超过1957个赞
知道大有可为答主
回答量:1996
采纳率:0%
帮助的人:1258万
展开全部
1.正确全局变量有默认值
2.file = NULL;
g_servicename = 0;
debugtime = 0;
这不是全局变量的释放吧 只不过将之赋值了一下
仍然存在
全局变量的生存期是 伴随着整个程序的执行的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式