linux 文件定位函数,C语言文件定位相关函数

文件中有一个位置指针,指向当前读写的位置,在顺序读写一个文件的过程中,没读写一个字符,位置指针自动滑向下一个字符位置。可以移动这个位置指针,达到随即读写目的。下面是几个和文件定位有关的函数。

1.rewind(fp);

fp为文件指针。返回值为void 即无返回值

该函数的作用是使位置指针重新返回文件的开头。

2.feek(fp,位移量,起始点);

fp是文件指针;

位移量:以起始点为基准向前滑动的字节数。位移量小于0则表示向后滑。ANSI C和大多数C版本要求位移量是long型数据。这样当文件长度大于64KB时不至出问题。ANSI C标准规定在数字末尾加个字母L,就表示是long型。

起始点可用数字表示为0,1,2,也可用宏名表示

起始点                                          名字                   用数字代表

文件开始                          SEEK_SET                                   0

文件当前位置                  SEEK_CUR                                    1

文件末尾                          SEEK_END                                    2

另外:fseek一般用于二进制文件,文本文件在字符替换的时候往往发生混乱。

例子:fseek(fp,100L,0);fseek(fp,30L,1);fseek(fp,-30L,SEEK_END);

fseek()的返回值为:

如果成功返回0值,失败的话返回什么书上没说,网上也没人说。以下是查到的英文解释。看不懂啊!谁能说说

If successful,fseekand_fseeki64returns 0. Otherwise, it returns a nonzero value. On devices incapable of seeking, the return value is undefined. Ifstreamis a null pointer, or iforiginis not one of allowed values described below,fseekand_fseeki64invoke the invalid parameter handler, as described inerrnotoEINVALand return -1.

3.ftell(fp)如果成功返回当前文件指针的位置,返回值为long型。否则返回-1并设置全局变量errno指出错误类型。0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值