Open In App

fseek() in C/C++ with example

Last Updated : 06 Jun, 2023
Like Article

fseek() is used to move the file pointer associated with a given file to a specific position.

Syntax of fseek()

The fseek() syntax is:

int fseek(FILE *pointer, long int offset, int position);


  • pointer: It is the pointer to a FILE object that identifies the stream.
  • offset: It is the number of bytes to offset from the position
  • position: It is the position from where the offset is added. Position defines the point with respect to which the file pointer needs to be moved. It has three values:
    • SEEK_END: It denotes the end of the file.
    • SEEK_SET: It denotes starting of the file.
    • SEEK_CUR: It denotes the file pointer’s current position. 

Return Value

  • It returns zero if successful, or else it returns a non-zero value.


The below C Program demonstrates the use of fseek() function.


// 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;

Suppose the file test.txt contains the following data:

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




When we implement fseek(), we move the pointer by 0 distance with respect to the end of the file i.e. pointer now points to the end of the file. Therefore the output is 81.

Related Articles:

Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads