fgetc:傳回所讀到的字元,傳回值如果是 EOF,可能是有錯誤發生或是檔案終止(end-of-file),所以應該利用 feof 或是 ferror 來判定錯誤發生或是檔案終止。
fgets: 傳回所讀到的字串,傳回值如果是 NULL,可能是有錯誤發生或是檔案終止(end-of-file),所以應該利用 feof 或是 ferror 來判定錯誤發生或是檔案終止。
使用 fgetc 讀取整個檔案
#include "stdio.h"
main()
{
FILE *fp;
ch ch;
if((fp=fopen("test", "r"))==NULL)
{
printf("file cannot be opened\n");
exit(1);
}
while((ch=fgetc(fp))!=EOF) fputc(ch,stdout);
fclose(fp);
}
使用 fgets 讀取整個檔案
#include "stdio.h"
main()
{
FILE *fp;
char str[128];
if((fp=fopen("test", "r"))==NULL)
{
printf("cannot open file\n");
exit(1);
}
while(!feof(fp))
if(fgets(str,128,fp)!=NULL) printf("%s",str);
fclose(fp);
}
沒有留言:
張貼留言