在C语言中,我们可以使用
fseek()
函数来查找文件的大小。例如:if (fseek(fp, 0L, SEEK_END) != 0)
{
// Handle repositioning error
}
所以,我有一个问题,使用 fseek()
和 ftell()
计算文件大小是推荐的方法吗?
ftell
的返回值不一定是字节偏移量,因此它不是确定文本文件大小的可移植方式。它只是指定您可以将其传回fseek
(使用SEEK_SET
)以返回流中的那个位置。 - Adrian McCarthyfseek(2)
两次,因为fseek(2)
系统调用会告诉您指针在移动之前的位置。 - Luis Colorado