What is fgetpos in C ?
The fgetpos function obtains the current position of stream and writes that in pos.
int fgetpos(FILE *stream, fpos_t *pos)
Parameters
This function takes the following two arguments:
stream- the pointer to aFILEobject that identifies the streampos- this is a pointer tofpos_t.
Return value
The function returns zero in case of success and non-zero value in case of an error.
Example
The following example shows the use of the fgetpos function. The program creates a file named file.txt. We obtain the initial position of the file using the fgetpos function and write “This is old text” there. The fsetpos function resets the write pointer and places it at the start of the file. The new text written this overrides the old text:
#include <stdio.h>int main () {FILE *thisFile;fpos_t position;int c;int n = 0;// char str[1000];thisFile = fopen("sampleFile.txt","w+");fgetpos(thisFile, &position);fputs("This is old text", thisFile);fsetpos(thisFile, &position);fputs("This is new text that will override old text", thisFile);fclose(thisFile);return(0);}
The string “This is old text” will be replaced by “This is new text that will override old text” in the file sampleFile.txt.
Free Resources
Copyright ©2025 Educative, Inc. All rights reserved