CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

请看一下?

楼主longks()2002-04-14 18:24:07 在 C/C++ / C语言 提问

 
   
        这是一段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

相关问题

  • 请看一下
  • 请看一下
  • 请看一下!
  • kuailexq2000() 请看一下!!!
  • 急,请看一下
  • 请帮忙看一下。
  • 请帮我看一下
  • 高手请看一下吧。
  • 请帮忙看一下!
  • 求助!请看一下。

关键词

  • 代码
  • 文件
  • f2
  • fscanf
  • 复制
  • buf
  • 东西
  • num
  • 指的文本文件

得分解答快速导航

  • 帖主:longks
  • jishiping

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo