The rewind() function sets the file pointer at the beginning of the stream. It is useful if you have to use stream many times.
Syntax:
void rewind(FILE *stream)
Example:
File: file.txt
this is a simple text
File: rewind.c
#include#include void main(){ FILE *fp; char c; clrscr(); fp=fopen("file.txt","r"); while((c=fgetc(fp))!=EOF){ printf("%c",c); } rewind(fp);//moves the file pointer at beginning of the file while((c=fgetc(fp))!=EOF){ printf("%c",c); } fclose(fp); getch(); }
Output:
As you can see, rewind() function moves the file pointer at beginning of the file that is why "this is simple text" is printed 2 times. If you don't call rewind() function, "this is simple text" will be printed only once.