C語言rewind()函數
rewind()
函數將文件指針設置在流的開頭。在需要多次使用流時,這就很有用。
rewind()
函數的語法:
void rewind(FILE *stream)
示例:
創建一個源文件:rewind-file.c,其代碼如下所示 -
#include<stdio.h>
void main() {
FILE *fp;
char c;
fp = fopen("string-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);
}
創建一個文本文件:string-file.txt,內容如下 -
this is rewind()function from yiibai tutorials.
執行上面示例代碼後,得到以下結果 -
this is rewind()function from yiibai tutorials.
this is rewind()function from yiibai tutorials.
如上所示,rewind()
函數將文件指針移動到文件的開頭,這就是爲什麼文件string-file.txt中的內容被打印2
次。 如果不調用rewind()
函數,文件中的內容將只打印一次。