当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C/C++ fseek()用法及代码示例


fseek() 用于将与给定文件关联的文件指针移动到特定位置。
用法:

int fseek(FILE *pointer, long int offset, int position)
pointer: pointer to a FILE object that identifies the stream.
offset:number of bytes to offset from position
position:position from where offset is added.

returns:
zero if successful, or else it returns a non-zero value 

position 定义文件指针需要移动的点。它具有三个值:
SEEK_END:表示文件结束。
SEEK_SET:表示文件的开始。
SEEK_CUR:表示文件指针的当前位置。


// C Program to demonstrate the use of fseek()
#include <stdio.h>
  
int main()
{
    FILE *fp;
    fp = fopen("test.txt", "r");
      
    // Moving pointer to end
    fseek(fp, 0, SEEK_END);
      
    // Printing position of pointer
    printf("%ld", ftell(fp));
  
    return 0;
}

输出:

81

解释

文件 test.txt 包含以下文本:



"Someone over there is calling you.
we are going for work.
take care of yourself."

当我们实现 fseek() 时,我们将指针相对于文件末尾移动 0 距离,即指针现在指向文件末尾。因此输出为 81。

相关文章: C语言 fseek() vs rewind()用法及代码示例

相关用法


注:本文由纯净天空筛选整理自GeeksforGeeks大神的英文原创作品 fseek() in C/C++ with example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。