满意答案
加一行代码: fseek(f, 0, SEEK_SET);
你写好文件后,没有关闭,那么文件指针在最后一个位置,那你在读的时候肯定就是从末尾啊,所以是随机字符,就像你说的乱码样。
故不用fseek也行,加这两行代码:
fclose(f);
f=fopen("c:\\test.txt","rt+"); //也关了,在打开,也行。
改后程序如下:
#include
#include
void main()
{
FILE *f ;
char ch[80] = "";
if( (f = fopen("c:\\test.txt","wt+"))==NULL)
{
printf("can't open the file");
//getch(); //你这两个函数没有加头文件,没有用。可以去掉。
//exit(1);
}
fputs ("sdfgsad1", f);
fputs ("sdfgsad2", f);
fseek(f, 0, SEEK_SET); //定位函数,必须要。
while(fgets(ch,128,f))
{
puts(ch);
}
fclose(f);
}
00分享举报