quitter une boucle forcée
bonjour à tous,
J'ai un souci avec ma fonction:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| void TraiterCoupleMots(ChainonMot const *pc, ChainonMot const *pc2,FILE *fout,int nbligne)
{
ChainonCoord const *pcCoord;
ChainonCoord const *pcCoord2;
double im=0;
for(pcCoord = coord_GetPremierC(GetPtrCoordC(pc)) ; pcCoord!=NULL ; pcCoord=coord_GetNextC(pcCoord))
{
for(pcCoord2 = coord_GetPremierC(GetPtrCoordC(pc2)) ; pcCoord2!=NULL ; pcCoord2=coord_GetNextC(pcCoord2))
{
if((GetLigne(pcCoord2)==GetLigne(pcCoord)))
{
fprintf(fout, "%s ", GetMot(pc));
fprintf(fout,"->");
fprintf(fout,"%s ", GetMot(pc2));
fprintf(fout,"IM = ");
im=info_mut(pc,pc2,nbligne);
fprintf(fout,"%e \n",im);
break ;
}
}
}
} |
J'explique:
elle fait 2 parcours de 2 liste chainées (les 2 boucles imbriqués) et elle teste les 2 champs des 2 liste ont les meme num de ligne:
SI oui, elle doit faire un affichge des mots et elle doit quitter immédiatement les 2 boucles.
Bon là est le souci, j'ai ajouter un break pour quitter, mais là elle continue le parcours .
Une idée SVP?
Merci