关于fclose报错问题

来源:互联网 发布:html5 java 编辑:程序博客网 时间:2024/05/29 03:03

当我们用FILE定义:

FILE* p;

fclose(p);

自然会报错,因为没给p赋值,当然你可以给它赋值,可是如果我们这样:

if(p!=NULL){

printf(" %d ",p);

fclose();

}

就会发现,依然报错,而且控制台输出了一个非0整数,说明p的初始值是一个随机值,因此,只要给p赋初始值就行了。

完整代码:

FILE* p;

//读写数据

//p=fopen("test.txt","r");//读

//p=fopen("test.txt","w");//写

if(p!=NULL){

printf(" %d ",p);

fclose();

}

这样就加强了代码的健壮性,比如有时候要做算法题的时候,先要写入文件,然后再读取,可能写的时候要注释掉读的部分,如果没有付初始值的话,就会报错,因此这样做最为保险。
0 0