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. |
执行上面示例代码后,得到以下结果 -
tthis is
rewind()function from yiibai tutorials.
this is rewind()function from yiibai tutorials. |
如上所示,rewind()函数将文件指针移动到文件的开头,这就是为什么文件string-file.txt中的内容被打印2次。
如果不调用rewind()函数,文件中的内容将只打印一次。
|
1350 次浏览 |
12次 |
|
捐助 |
|
|
|
|
|