代码片段在while循环之后有一个EOF,文件必须在之后重新打开-- fopen被重用。我的问题是,是否有办法避免这种笨拙的双重使用fopen还是不以某种方式使用EOF?
if (!(f=fopen("D:\\C\\Test.txt", "r")))
{
printf("File not existing\n");
}
while ((next=fgetc(f))!=EOF){
if (next=='1') num++;
}
printf("%d\n", num);
f=fopen("D:\\C\\Test.txt", "r");
while (fgets(buf, 1000, f)!=NULL)
printf("%s", buf);希望我说的够清楚了。
发布于 2013-12-29 23:32:12
发布于 2013-12-29 23:32:10
使用反向(F)函数。它将文件指针重新设置为头,因此在倒带()文件后与第1次fopen()相同。有关详细信息,请参阅:http://linux.die.net/man/3/rewind
发布于 2013-12-29 23:32:33
( a) fseek到开头
或
( b)在重新打开之前关闭文件
https://stackoverflow.com/questions/20831252
复制相似问题