嗯,我的循环跳过其他每一行,我将这个5 15 16 17 ...比较为17 37 5 ...并试图找到数字匹配的时间。而且我不确定为什么它会跳过一条线。
for(int j=0;j<fileMaxLines;j++){
for(int k=0;k<fileMaxLines;k++){
//cout <<" " <<EInfo[j].idSE <<endl;
if(EInfo[j].idSE == ETran[k].idIV){
temphours = ETran[k].numbOfHoursIV;
cout <<EInfo[j].idSE << " -->" << ETran[k].idIV;
cout << "right"<<endl;
k=fileMaxLines;
break;
}
else{
//cout <<EInfo[j].idSE << " -->" << ETran[k].idIV << endl;
}
cout <<EInfo[j].idSE << " -->" << ETran[k].idIV << endl;
}
EInfo[j].numbOfHoursSE = temphours;
j++;
}
答案 0 :(得分:4)
你增加j
两次:
for(int j=0;j<fileMaxLines;j++){ // here
for(int k=0;k<fileMaxLines;k++){
//cout <<" " <<EInfo[j].idSE <<endl;
if(EInfo[j].idSE == ETran[k].idIV){
temphours = ETran[k].numbOfHoursIV;
cout <<EInfo[j].idSE << " -->" << ETran[k].idIV;
cout << "right"<<endl;
k=fileMaxLines;
break;
}
else{
//cout <<EInfo[j].idSE << " -->" << ETran[k].idIV << endl;
}
cout <<EInfo[j].idSE << " -->" << ETran[k].idIV << endl;
}
EInfo[j].numbOfHoursSE = temphours;
j++; // and here
}