返回介绍

9.1.2 文件的关闭

发布于 2025-04-11 22:33:04 字数 1138 浏览 0 评论 0 收藏 0

可以使用 fclose 函数来关闭一个文件,该函数原型如下:

int fclose(FILE *stream);

fclose 函数只有一个参数 stream,是 FILE 结构体类型的指针,表示一个文件流。fclose 函数的功能就是将该参数所指定的文件流关闭。函数的返回值为 int 类型,当函数执行成功,返回整型值 1,当函数执行失败,返回一个 EOF。EOF 是一个宏的名字,是“End of file”(文件终点)的首字母缩写,它表示一个非零值,通常被定义为–1。

我们可以将 fopen 函数所返回的文件流作为实参,调用 fclose 函数,以关闭与该文件流相关联的文件。例如:

代码中,首先通过 fopen 函数打开 D 盘的 test.txt 文件,并返回与该文件相关联的输入流,然后通过 if 语句对文件流 pfile 进行检查,若文件流 pfile 是正常、可用的,则执行大括号中的语句;若文件流是不可用的,则执行 else 部分,打印输出文件打开失败的信息。

在大括号中,首先通过 printf 函数打印文件打开成功的信息,然后再次使用 if…else 语句。在小括号内的条件表达式中,将文件流 pfile 作为实参调用 fclose 函数,这会将与文件流 pfile 相关联的文件 test.txt 关闭。如果关闭成功,则 fclose 函数的返回值为 0,由于前面使用了逻辑非运算符,因此,小括号内的表达式的值为真,这会通过 printf 函数在控制台窗口打印文件关闭成功的信息;若文件关闭失败,fclose 函数的返回值为 EOF,通过逻辑非运算符转换,小括号内表达式的结果为假,就会执行 else 部分,打印文件关闭失败的信息。

由于之前已经在 D 盘上创建了 test.txt 文件,因此,编译运行程序,会得到如下结果:

File opened successfully.
File closed successfully.

若将 D 盘上的 test.txt 文件删除,并重新运行该程序,则会得到如下结果:

Failed to open file.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。