- 论坛徽章:
- 0
|
#include<stdio.h>
int main()
{
char ch[50];
char ch1[50];
char filename[50];
int j=0;
FILE *fp;
printf("\nPlease input the filename\n");
scanf("%s",filename);
if((fp=fopen(filename,"r"))==NULL)
{
printf("cannot open file.\n");
exit(0);
}
while(!feof(fp))
{
ch[j]=fgetc(fp);
putchar(ch[j]);
j=j+1;
}
// fgets(ch1,50,fp);
printf("\n%d\n",strlen(ch));
// printf("\n%d\n",strlen(ch1));
fclose(fp);
return 0;
}
文件内容:程序设计3000第二版4582ab
用fgetc读文件到数组,长度是27。
用fgets读文件到数组,长度是26。
实际长度是26。
因为fgetc只有碰到文件结束标志才结束,所以想用这个函数。
fgets只能读一行,感觉有缺陷。
请高手指教下。
在Linux环境下的。 |
|