l'execution bloqué dans une fonction
Bonjour à tous,
j'ai le meme probleme que je souffre depuis longtemps,
j'ai fait un programme qui tourne bien sur un ptit fichier texte , mais quand je le fais tourner sur un fichier texte de 1GO, il se bloque sur une fonction!!
en fait je suis bloquée et je sais pas quoi faire.
aidez moi svp.
j'attends vos idées
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| Liste * GenNseq(Liste *seq2, Liste **seq)
{
Liste *p;
Liste *q;
int i;
char * mot;
char * mot1;
char *first;
char *last;
char buff1[C_TAILLE_MOT];/* pas besoin de malloc car 50 est une petite taille et ca s'ajuste avec Liste::mot */
char buff2[C_TAILLE_MOT];/* deux buffer temporaire: un pour chaque liste!*/
Liste *pNouvelleListe;/* pour creer la liste*/
Liste *pCourant;
pNouvelleListe=NULL;
for(p=seq2; p!=NULL; p=p->suivant){
mot=p->mot;
if(mot){
first=GetFirstWord(mot, buff1);
//for(i=0;i<39;++i){ // pour chaque élément (liste) de seq
for(q=seq; q!=NULL; q=q->suivant){ // seq[i] - element(liste) de seq
mot1 =q->mot;
if(mot1){
//printf("%s", mot1);
last=GetLastWord(mot1, buff2);
if(strncmp(first, last,C_TAILLE_MOT)==0){
//printf("similaires!!!!");
pCourant = malloc(sizeof(Liste));
pCourant->freq = 1;
strncpy(pCourant->mot,first,C_TAILLE_MOT);
pCourant->suivant = pNouvelleListe;
pNouvelleListe = pCourant;
}
}
}
}
}
return pNouvelleListe;
} |
merci