怎么循环过后的程序都没有执行??
void data_get_data()
{
struct DATA data[10000];
int arr=0;
int data_times_in[10000]={0};
int data_times_out[10000]={0};
FILE *fp1,*fp2,*fp3;
char szbuffer1[8]={0};
char szbuffer2[8]={0};
char szbuffer3[28]={0};
char szbuffer4[26]={0};
char szbuffer5[7]={0};
char szbuffer6[1]={0};
fp1=fopen(".\\data\\data.txt","r");
fp3=fopen(".\\out\\times.txt","w");
if (fp1==NULL)
{
puts("File Not Exist!\n");
exit(0);
}
for(int n=1;!feof(fp1);n++)
{
read_line(fp1, szbuffer1); //读记录第1行数据
fp2=fopen(".\\temp\\temp.$","w");
fp3=fopen(".\\out\\times.txt","a");
fwrite(szbuffer1, 1,8, fp2);
fclose(fp2);
fp2=fopen(".\\temp\\temp.$","r");
fscanf(fp2,"NO:%d",&data[arr].number_from);
fprintf(fp3,"NO:%d\n",data[arr].number_from);
fclose(fp2);
fclose(fp3);
read_line(fp1, szbuffer2); //读记录第2行数据
fp2=fopen(".\\temp\\temp.$","w");
fp3=fopen(".\\out\\times.txt","a");
fwrite(szbuffer2, 1, 8, fp2);
fclose(fp2);
fp2=fopen(".\\temp\\temp.$","r");
fscanf(fp2, "TO:%d",&data[arr].number_to);
fprintf(fp3,"TO:%d\n",data[arr].number_to);
fclose(fp2);
fclose(fp3);
read_line(fp1, szbuffer3); //读记录第3行数据
fp2=fopen(".\\temp\\temp.$","w");
fwrite(szbuffer3, 1,28, fp2);
fclose(fp2);
fp2=fopen(".\\temp\\temp.$","r");
fscanf(fp2, "TIMESTART:%d-%d-%d %d:%d:%d",
&data[arr].ftime_start.ft_year,&data[arr].ftime_start.ft_month,&data[arr].ftime_start.ft_days,&data[arr].ftime_start.ft_hour,&data[arr].ftime_start.ft_minute,&data[arr].ftime_start.ft_second);
fclose(fp2);
read_line(fp1, szbuffer4); //读记录第4行数据
fp2=fopen(".\\temp\\temp.$","w");
fwrite(szbuffer4, 1, 26, fp2);
fclose(fp2);
fp2=fopen(".\\temp\\temp.$","r");
fscanf(fp2, "TIMEOUT:%d-%d-%d %d:%d:%d",
&data[arr].ftime_out.ft_year,&data[arr].ftime_out.ft_month,&data[arr].ftime_out.ft_days,&data[arr].ftime_out.ft_hour,&data[arr].ftime_out.ft_minute,&data[arr].ftime_out.ft_second);
fclose(fp2);
fp3=fopen(".\\out\\times.txt","a");
fprintf(fp3,"TIME:%d-%d\n",data[arr].ftime_start.ft_year,data[arr].ftime_start.ft_month);
fclose(fp3);
//把第三行第四行的时间转化为记次表,因为一定是本年本月的记录,因此假如年月不同,输出次数为0,不记费
fp3=fopen(".\\out\\times.txt","a");
fprintf(fp3,"DEGREEIN:%d\nDEGREEOUT:%d\n",data_times_in[arr],data_times_out[arr]);
fclose(fp3);
read_line(fp1, szbuffer5); //读记录第5行数据
fp2=fopen(".\\temp\\temp.$","w");
fp3=fopen(".\\out\\times.txt","a");
fwrite(szbuffer5, 1,7, fp2);
fclose(fp2);
fp2=fopen(".\\temp\\temp.$","r");
fscanf(fp2,"TYPE:%d",&data[arr].type);
fprintf(fp3,"TYPE:%d\n",data[arr].type);
fclose(fp2);
fclose(fp3);
read_line(fp1,szbuffer6); //读记录第6行数据
fp3=fopen(".\\out\\times.txt","a");
fprintf(fp3,"\n");
fclose(fp3);
++arr;
}
printf("%d\n%d",arr,n)
}
最后一行程序始终没有执行??
这是什么原因呀???
好奇怪,看了半天也没有找到错误的原因:(