首页  >  问答  >  正文

c++ - 为什么WHILE循环无法依次读取文件每一行数据?


while(!feof(fp)){

fscanf(fp,"%d %s %s %d %d %d\n",&(staff[i].num),staff[i].name,staff[i].sex,&(staff[i].basepay),&(staff[i].extrapay),&(staff[i].day));
*j++;
i++;
}//上图的代码

很简单的代码,就是把txt中每一行的数据依次存入结构体数组中,用for循环有效,但是改成while循环就没用了怎么回事?

PHPzPHPz2715 天前691

全部回复(1)我来回复

  • PHP中文网

    PHP中文网2017-04-17 14:38:19

    一个低级错误,*j++要加括号,应该是(*j)++。虽然对问题没什么影响,但是让我误以为数据没有被传入结构体数组内。再加上之前运行了下搜索函数又报不存在,就以为数据没存进去。
    另外编译器有点抽风,关了去看部电影回来,再运行下就好了。

    回复
    0
  • 取消回复