码迷,mamicode.com
首页 > 其他好文 > 详细

文件IO详解(十三)---pread函数和pwrite函数详解

时间:2016-10-01 12:51:16      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:

    pread和pwrite函数是Linux提供的另外一种读取和写入文件的操作。pread函数的操作可以看作是顺序调用了lseek函数和read函数,同样pwrite函数也类似。
======================================================
函数原型:
技术分享
技术分享
函数参数:
  • fd:要操作的文件描述符
  • buf:在pread函数中表示存储读出数据的内存首地址,在pwrite函数中表示写入数据的内存首地址
  • count:在pread函数中表示希望读出的字节数,在pwrite函数中表示希望写入的字节数
  • offset:表示从哪个位置开始读取或者写入数据。偏移量是从文件开头开始计算
返回值:
  • 调用成功时pread函数返回实际读到的字节数,遇到文件结尾则返回0;pwrite返回写入的字节数
  • 调用失败时pread函数返回 -1 ;pwrite函数返回 -1 .
=======================================================
pread函数相当于先后调用了lseek和read函数,但是还是有区别的,有以下两点区别:
  • pread函数是原子操作,而先后调用两个函数不是原子操作
  • pread函数是不会改变当前文件偏移量的,而read和write函数会改变当前文件偏移量
(pwrite函数类似)

 

文件IO详解(十三)---pread函数和pwrite函数详解

标签:

原文地址:http://www.cnblogs.com/frank-yxs/p/5925625.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!