Home »
C programs »
C stdio.h library functions programs
fgetpos() function in C language with Example
Here, we are going to learn about the fgetpos() function of library header stdio.h in C language with its syntax, example.
Submitted by Souvik Saha, on January 07, 2019
fgetpos() function in C
Prototype:
int fgetpos(FILE* filename, fpos_t *position);
Parameters:
FILE* filename, fpos_t *position,
Return type: int (the current position of the file indicator pointer)
Use of function:
In file handling, through the fgetpos() function we get the current position of the input file stream indicator. Whenever we need the file indicator position in the file, we need to use the function fgetpos(). The prototype of the fgetpos() function is: int fgetpos(FILE* filename, fpos_t *position);
Here the data type of the position variable must be fpos_t type.
fgetpos() example in C
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE* f;
char ch[100];
//Initialize the position variable
fpos_t pos;
//Create the file for write operation
f = fopen("includehelp.txt", "w+");
//Store the value of the function point indicator
fgetpos(f, &pos);
printf("Enter five strings\n");
for (int i = 0; i < 4; i++) {
//take the strings from the users
scanf("%[^\n]", &ch);
//write back to the file
fputs(ch, f);
//every time take a new line for the new entry string
//except for last entry.Otherwise print the last line twice
fputs("\n", f);
//clear the stdin stream buffer
//if we don't write this then after taking string
//%[^\n] is waiting for the '\n' or white space
fflush(stdin);
}
//take the strings from the users
scanf("%[^\n]", &ch);
fputs(ch, f);
//set the indicator position to the initial position of the file
fsetpos(f, &pos);
printf("File content is--\n");
printf("\n...............print the strings..............\n\n");
while (!feof(f)) {
//takes the first 100 character in the character array
fgets(ch, 100, f);
//and print the strings
printf("%s", ch);
}
//close the file
fclose(f);
return 0;
}
Output
C stdio.h Library Functions Programs »