linux函数代码操练---文件操作----04lseek()函数

基础知识

lseek对文件描述符的指针位置进行设置。
函数原型
off_t lseek(int fildes,off_t offset,int wence);

实验内容

①利用SEEK_SET定义偏移量
②利用SEEK_CUR定义偏移量
③利用SEEK_END定义偏移量
④lseek返回值的探究

利用SEEK_SET定义偏移量

程序截图
这里写图片描述
运行结果
这里写图片描述
说明
指针相对于文件开头移动三个字节,然后从第四个字节开始写数据。

利用SEEK_CUR定义偏移量

程序截图
这里写图片描述
运行结果
这里写图片描述
说明
程序先相对于文件开头移动3个字节,此时指针指向第三个字节,接着相对当前位置移动2个字节,此时指针指向第5个字节,写内容时,从第六个字节的位置开始写,覆盖掉原来的内容。

利用SEEK_END定义偏移量

程序截图
这里写图片描述
运行结果
这里写图片描述
文件指针相对于最后一位向前移动3位,指针指向倒数第四位,写内容时从倒数第三位写入。正数表示向后偏移,负数表示向前偏移,如果向前偏移超过了文件头,则后续偏移不会继续,如果向后偏移超过文件尾则超过部分用0补充

lseek返回值的探究

lseek调用成功时返回相对开头偏移的字节数
lseek调用失败时返回-1

程序截图
这里写图片描述
运行结果
这里写图片描述


长沙理工大学

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值