Helppppppppppppp code en C

stroumpf Messages postés 289 Date d'inscription   Statut Membre Dernière intervention   -  
stroumpf Messages postés 289 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,



j'ai un probleme au nivaeu de cette fonction.
quand je fait le run, ca na ffiche pas la fenetre d'execution
quelqun peut maider SVP
merci
void elaguer2seq(Liste *seq){
   
      Liste **TableHash; 
      Liste *p;
      for(p=TableHash[0];p!=NULL;p=p->suivant)
      {
       printf("%s", p->mot);}     
     }
A voir également:

6 réponses

mich62120 Messages postés 631 Date d'inscription   Statut Membre Dernière intervention   6
 
Salut,

Je n'y connais rien au List. Le seul truc qui je trouve bizarre c'est que tu ne mette rien dans TableHash et dans mot.
Peut être qu'il est égal à null tout le temps?
Mais surtout comme dit kazouu, que fait-tu avec ton char* mot?

Tu ne le mets pas à jour.Le %s du printf et assez instable (enfin a chaque fois que je l'utilise je suis peut être pas très doué :) ).
Et il s'agit d'un élément de la List p? (p-> ... )?
1
sareeeeee Messages postés 50 Date d'inscription   Statut Membre Dernière intervention  
 
je suis pa fort en C
mais il me senble que tu a oublier ton

main()
0
stroumpf Messages postés 289 Date d'inscription   Statut Membre Dernière intervention   2
 
lol.
tres bonne reponse, mais pas pour un programmeur , sinon comme le compilateur va compiler?!!!!!!!!!!!!!!!!!!!!!!!!
0
stroumpf Messages postés 289 Date d'inscription   Statut Membre Dernière intervention   2
 
voila la fonction qui parcoure une liste chainée et un hashtable, pour afficher a chaque fois le contenu de la liste chainéé



void elaguer2seq(Liste *L){
  Liste *p;
  Liste *q;
  char *mot;
  Liste *TableHash;
  for(p=L;p!=NULL;p=p->suivant){
    
      for(q= TableHash ;q!=NULL;q=q->suivant){    
             printf ("%s", p->mot);
             
             }                    
  }
}


merci
0
kazouu Messages postés 466 Date d'inscription   Statut Membre Dernière intervention   12
 
si tu code sous deev C++ il faut mettre un
system("pause");
avant tout return 0 dans ton main
0
stroumpf Messages postés 289 Date d'inscription   Statut Membre Dernière intervention   2
 
bjr kaoo, mais le probleme n'est pas là, c'est au niveau de ma fonction, car quand je l'enleve tt marche nikel
0
kazouu Messages postés 466 Date d'inscription   Statut Membre Dernière intervention   12
 
il sert a quoi ton "char *mot;" ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
exact, tu ne défini pas TableHash. Et comme tu fais q=TableHash, ça pose un problème.

Tu peux très bien compiler un fichier sans main au fait ! (c'est d'ailleurs la majorité des fichiers)
0
stroumpf Messages postés 289 Date d'inscription   Statut Membre Dernière intervention   2
 
Bonjour,
jai developpé une fonction en C et qui bug: ua pas mal d'erreurs!!! 4 erreurs.
cettefonction prend en entree un mot et une liste chainée et doit verifier que le mot en entréé verifie la condition d'inclusion pour tous les sequence des mots qui sont dans une liste chainée.
la fonction de verification marche nikel pour 1 mot et 1 seq
mais quand je la fait tourner pour tte une liste cacause un pb.
merci
je compte sur vous.

int chercher_mot(const char *phrase,const char *mot){
    int last;
    const size_t size = strlen(mot);
    char *find = strstr(phrase,mot);
    char *p;
    
    while(find){
        // le mot a été trouvé, mais est ce le dernier mot ?
        if(strlen(find) == size) return 1;
        else{ // le mot est peut être en dernière position mais suivi de caractères autre que des mots (ponctuation...)
            last = 1; // 1 si mot est bien le dernier dans la séquence, 0 sinon
            for(p = &(find[size]);*p != '\0';++p){
                if (isalpha(*p)){ // on a trouvé un caractère alphanumérique derrière donc ça ne va pas
                    last = 0;
                    break;
                }
            }
            // le mot n'est pas suivi de caractère alphanumérique donc c'est bon
            if (last) return 1;
        }
        find = strstr(&(find[1]),mot);
    }
    return 0;
}




int verifCondition2seq(char *mot, Liste *seq)
{
    if(seq==NULL)
    return 0;
    Liste tmp = *seq;
    while(tmp != NULL)
    {
              if(chercher_mot(tmp->mot, mot)
              return 1;
              printf ("ok");
              tmp=tmp->suivant;
     }  
     return 0;
} 
0