写了一个程序,用来推断一个文件是否存在:
#include<stdio.h>
main()
{
FILE *fp;
fp = fopen ("/home/wang/my/ct2.c", "r+");
if (fp == NULL)
{
printf("there is not this file!\n");
}
else
printf("the file is exist!\n");
fclose (fp);
}
r+表示为读写打开一个文本文件
假设在/home/wang/my/文件夹下的ct2.c文档存在。
则程序执行结果为:
the file is exist!
执行结果是正确的。
假设在/home/wang/my/文件夹下的ct2.c文档不存在,
则程序执行结果为:
there is not this file!
Segmentation fault (core dumped)
执行结果是错误的!
这时须要用到exit函数。将程序改动为例如以下形式:
#include<stdio.h>
main()
{
FILE *fp;
fp = fopen ("/home/wang/my/ct2.c", "r+");
if (fp == NULL)
{
printf("there is not this file!\n");
exit(0);
}
else
printf("the file is exist!\n");
fclose (fp);
}
程序执行结果为:
there is not this file!
执行结果是正确的!结果中没有了"Segmentation fault (core dumped)"!
exit函数的作用是关闭全部文件,终止正在运行的程序,待用户检查出错误,
改动后再执行。