Year-End Discount: 10% OFF 1-year and 20% OFF 2-year subscriptions!

Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

c

What is fsetpos in C ?

Sheza Naveed

Tired of LeetCode? 😩

Learn the 24 patterns to solve any coding interview question without getting lost in a maze of LeetCode-style practice problems. Practice your skills in a hands-on, setup-free coding environment. 💪

The fsetpos function restores the position in the stream to pos, as seen here:

int fsetpos ( FILE * stream, const fpos_t * pos );

Parameters

This function takes the following two arguments:

  1. stream - pointer to a FILE object that identifies the stream.
  2. pos - this is a pointer to fpos_t that contains a position previously retrieved by fgetpos.

Return value

The function returns zero in case of success and non-zero value in case of an error.

Example

The following code shows the use of fsetpos function followed by reading the file. The program creates a file named file.txt. We obtain the initial position of the file using fgetpos function and write “This is old text” there. 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;
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);
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.

RELATED TAGS

c

CONTRIBUTOR

Sheza Naveed
Copyright ©2022 Educative, Inc. All rights reserved

Tired of LeetCode? 😩

Learn the 24 patterns to solve any coding interview question without getting lost in a maze of LeetCode-style practice problems. Practice your skills in a hands-on, setup-free coding environment. 💪

Keep Exploring
Related Courses