Linux-lseek函数

3 篇文章 0 订阅

lseek()调用用来定位文件指针,用户可以定位到指定的位置进行读写等操作。

#include <sys/types.h>
 #include <unistd.h>
off_t lseek (int fd, off_t pos, int origin);

origin的参数值如下:
SEEK_CUR:从当前位置开始定位  当前值+偏移量(pos) pos可正可负也可为零。
SEEK-END:从文件的末尾开始定位  文件的长度+偏移量(pos)	 pos可正可负也可为零。
SEEK_SET:从文件的起始位置开始定位 	文件开头加上偏移量即可

定位读写:Linux提供了pread和pwrite来替代lseek。

#define _XOPEN_SOURCE 500
#include <unistd.h>
ssize_t pread (int fd, void *buf, size_t count, off_t pos); 
该调用从文件描述符fd的文件中pos位置读取count字节的数据到buf中
ssize_t pwrite (int fd, const void *buf, size_t count, off_t pos); 
该调用从文件描述符fd的pos位置写count个字节的数据到buf
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值