一起talk C栗子吧(第一百四十一回:C语言实例--文件操作:基于文件指针一)

本文介绍了文件流和文件指针的基本概念,并解释了文件指针如何用于操作文件流,进而实现对文件的读写。文章还对比了文件指针与文件描述符的区别和联系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


各位看官们,大家好,上一回中咱们说的是基于文件描述符进行文件操作的例子,这一回咱们说的是基于文件指针进行文件操作的例子。闲话休提,言归正转。让我们一起talk C栗子吧!

看官们,在介绍文件指针前,我们先介绍一下文件流。所谓的文件流是一个抽象的概念,对文件的操作无非是向文件读取或者写入数据,而读取或者写入数据的过程是持续的,就是小河流水一样,因此就叫把它叫作流了。当然了,这并不是命名文件流的真正原因,它是从stream这个单词翻译过来的。 我们常用的文件流有输入流,输出流和错误流。

明白文件流后,我们来介绍文件指针。文件指针是指向文件流的,我们可以通过文件指针来操作文件流,进而操作文件。我这么说,大家是不是觉得,文件指针和文件描述符十分类似呢?确实是这样。文件描述符是系统提供的,而文件指针是C标准库提供的。就像通过文件描述符使用系统API一样,我们可以通过文件指针使用标准库中的函数。其实文件指针是标准库对文件描述符的封装,文件指针中除了包含有文件描述符外,还有一些缓冲信息。当然了,我们在编写应用程序的时候不需要关注这些细节。

大家还记得我们在说文件描述符时介绍过的0,1,2这三个文件描述符吧,它们分别表示标准输入,标准输出和标准错误,每个进程启动时都会自动打开这三个文件操作符,在进程结束时又会自动关闭它们。和文件描述类似,标准库也提供了三个文件指针:

  • stdin 指向标准输入流
  • stdout 指向标准输出流
  • stderr 指向标准错误流

这三个流也是随着进程的启动而且打开,随着进程的结束而关闭。大家都知道文件描述符的数量是有限的,文件流的数量也是有限的,通常来说,我们最多可以打开16个文件流。这个与系统设置有关,我们可以通过stdio.h文件中的FOPEN_MAX来查看。

看官们,文件指针和文件描述符十分类似,因此,大家可以使用对比的方式去学习和了解他们。只要明白了其中的一种,另外一种就很容易掌握了。就当作是依葫芦画瓢吧,哈哈。

各位看官,关于文件操作:基于文件指针的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解 。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

talk_8

真诚赞赏,手有余香

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值