请看一下?
这是一段c代码,我从f2所指的文本文件复制到f1所指的文本文件,为什么这段代码是个死循环?
while (!feof(f2))
{
fscanf(f2,"%d",&x);
fprintf(f1,"%d",x);
}
问题点数:60、回复次数:8Top
1 楼Muf(沐枫)回复于 2002-04-14 19:02:19 得分 0
fscanf(f2,"%d\n", &x)Top
2 楼longks()回复于 2002-04-14 20:25:58 得分 0
为什么这样改?但是这样都还不行!Top
3 楼jacky_chen(战神)回复于 2002-04-14 20:36:14 得分 0
那要看你的f2指的文件里面是什么东西了?
有没有除整数以外的东西!Top
4 楼jishiping(JSP 季世平)回复于 2002-04-14 21:00:31 得分 60
复制文件,干吗这样写?
int num;
char buf[2048];
//.....
while(1) {
num = fread(buf,1,sizeof(buf),fp1);
if (num<=0) break;
fwrite(buf,1,num,fp2);
}Top
5 楼longks()回复于 2002-04-15 14:02:12 得分 0
to:jsp
我写的程序错在哪里?
为什么当我想把f2所指的文件里的数据放到程序的数组g[100][8](里面的数据不会超过该数组容量)里时,用下面的程序也是死循环?
int num;
int i=0,j=0;
int buf[2048];
while(1)
{
num=fread(g[i]+j,1,sizeof(g[i]+j),fp1);
if(num<=0) break;
j++;
if(j>7) {j=0;i++;)
}Top
6 楼ccnuxjg()回复于 2002-04-15 14:24:38 得分 0
num=fread(g[i]+j,1,sizeof(g[i]+j),fp1);//出错
fread的第一个参数是指针,你的是整数
Top
7 楼wkoji(杨威利)回复于 2002-04-15 14:41:38 得分 0
ccnuxjg(暗黑执政官) 正确Top
8 楼longks()回复于 2002-04-15 18:38:10 得分 0
那应该怎样改?Top




