gpt4 book ai didi

c - 读取后的 fstat 行为

转载 作者:太空宇宙 更新时间:2023-11-04 02:04:38 24 4
gpt4 key购买 nike

在许多情况下,我看到在调用 open 分配文件描述符后直接执行 fstat 调用:

fd = open(file, flags, mode);
fstat_result = fstat(fd, &stat_log);

如果已经调用了read first,fstat 的行为是否有任何不同?

fd = open(file, flags, mode);
read_result = read(fd, buffer, buffersize)
fstat_result = fstat(fd, &stat_log);

我所说的“表现不同”是指:fstat 的返回值或“struct stat”缓冲区输出中的任何内容在那种情况下是否不同?

stat_log 的任何与大小相关的成员现在是否表示剩余要读取的文件的大小?

如果我已经读取到文件末尾,此后对 fstat 的调用会导致失败吗? (fstat 返回 -1)

This fstat document似乎并不表示需要文件描述符来引用尚未读取的文件。你有没有发现任何其他迹象?

最佳答案

您可以在打开文件之后但在 fstat 之前读取文件。唯一会改变的是任何因读取而改变的属性。唯一的候选者是 atime,它是读取的时间,可能晚于 open 的时间。

关于c - 读取后的 fstat 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22257634/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com