Ano*_*ous 1 c io
文档对此非常模糊.如果我read()多次调用C 函数,我必须传递一些我希望每次都读取的字节.但我怎么知道起始指数是什么?例如:
read()
n = read(fd, *buffer, 10) n2 = read(fd, *buffer, 10)
第一次调用read会读10个字节,而文件描述符的文件fd到buffer.但是当我再次调用它时,它会读取完全相同的东西,还是会读取接下来的 10个字节?我真的认为这没有意义,但我认为无法定义所需的起始索引.
read
fd
buffer
use*_*751 5
操作系统跟踪文件中的"当前位置".当您打开文件时,这将是文件的开头.每次调用时read,都会从当前位置读取一些字节,并提前当前位置.您可以使用lseek更改当前位置.
lseek
请注意,这read也适用于没有当前位置的东西,比如管道和套接字.从那些读取将始终返回您尚未读取的下一位数据,这使它们与文件的工作方式一致(除了您不能使用lseek).
归档时间:
10 年 前
查看次数:
924 次
最近记录: