首页 > 代码库 > unix文件偏移量函数总结
unix文件偏移量函数总结
上一篇文章给自己总结了一下linux环境下的大部分的I/O函数,还有一类函数就是为当前操作的文件设置文件偏移量。
同样分为两种函数,一种是linux提供的一个系统调用函数lseek();还有一种就是标准C库函数。
先介绍linux下面的的lseek()函数:
off_t lseek(int fd,off_t offset,int whence);该函数为fd文件设置偏移量,返回值为设置后的偏移量,失败返回-1。 whence的值则分三种:SEEK_SET指定位到文件开始加off_t的位置,SEEK_CUR定位到当前文件偏移量加off_t的位置,SEEK_END则定位到文件末尾加off_t的位置。offset 可正可负。当文件偏移量定位到末尾加上一个正的off_t的位置的时候,则会形成文件空洞。文件中未读写的字节都读为0,至于是否会占用磁盘空间则是要看不同的系统实现。
而标C函数库则提供了如下几个函数:
long ftell(FILE* FP);
int fseek(FILE* fp,long offset,int whence);
void rewind(FILE* fp)
unix文件偏移量函数总结
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。