Partage
  • Partager sur Facebook
  • Partager sur Twitter

Sujet résolu
    22 octobre 2006 à 17:05:47

    On peut avoir un décodeur ?
    • Partager sur Facebook
    • Partager sur Twitter
      22 octobre 2006 à 17:11:41

      :lol::lol::lol::lol::lol:

      Il s'est sûrement trompé ^^ :
      int main()
      {
      char *motSecret = selectionnerMot();
      printf("%s",motSecret);
      printf("%s",motSecret);
      long nombreDeVies = 10;
      char lettreEntree = 0;
      regles();
      char *motCache = cacher(motSecret);
      printf("Bienvenue dans le Pendu !");
      [...]
      }


      /* Ici il y a un problème avec le Zcode et ce qu'il a marqué :o */

      char* selectionnerMot()
      {
      FILE* dico = fopen("dico.txt", "r");
          if(dico == NULL)
          {
          printf("Erreur lors de l'ouverture du fichier.");
          exit(0);
          }
      long nombreMots = 0, motChoisi = 0;
      int caractereCourant;
      char motSelectionne[100] = "";
          do {
          caractereCourant = fgetc(dico);
            if (caractereCourant == '') nombreMots++;

             }while(caractereCourant != EOF);
      motChoisi = aleatoire(nombreMots);
      rewind(dico);
          while(motChoisi>0)
          {
          caractereCourant = fgetc(dico);
            if(caractereCourant == '')motChoisi--;
          }
      fgets(motSelectionne, 100, dico);
      long taille = strlen(motSelectionne);
      motSelectionne[strlen(motSelectionne)-1] = '';
      fclose(dico);
      return motSelectionne;
      }



      /************************************/
      Voila, c'est déja mieux :)
      • Partager sur Facebook
      • Partager sur Twitter
        22 octobre 2006 à 17:12:31

        Essaies encore un coup :) .

        edit: test
        int main() {
        }


        edit2: pas de problème
        • Partager sur Facebook
        • Partager sur Twitter
          22 octobre 2006 à 17:14:14

          On a le droit de rigoler ? :-°

          EDIT: Zut c'est corrigé, on voyait vraiment du code pur matrice avant :p
          • Partager sur Facebook
          • Partager sur Twitter
            22 octobre 2006 à 17:17:18

            <span class="kw4">int</span> main<span class="br0">&amp;amp;#40;</span><span class=&quot;br0&quot;>&amp;amp;#41;</span> <span class=&quot;br0&quot;>&amp;amp;#123;</span> <span class=&quot;kw4&quot;>char</span> *motSecret = selectionnerMot<span class=&quot;br0&quot;>&amp;amp;#40;</span><span class=&quot;br0&quot;>&amp;amp;#41;</span>; <a href=&quot;http://www.opengroup.org/onlinepubs/009695399/functions/printf.html&quot;><span class=&quot;kw3&quot;>printf</span></a><span class=&quot;br0&quot;>&amp;amp;#40;</span><span class=&quot;st0&quot;>&quot;%s&quot;</span>,motSecret<span class=&quot;br0&quot;>&amp;amp;#41;</span>; <a href=&quot;http://www.opengroup.org/onlinepubs/009695399/functions/printf.html&quot;><span class=&quot;kw3&quot;>printf</span></a><span class=&quot;br0&quot;>&amp;amp;#40;</span><span class=&quot;st0&quot;>&quot;%s&quot;</span>,motSecret<span class=&quot;br0&quot;>&amp;amp;#41;</span>; <span class=&quot;kw4&quot;>long</span> nombreDeVies = <span class=&quot;nu0&quot;>10</span>; <span class=&quot;kw4&quot;>char</span> lettreEntree = <span class=&quot;nu0&quot;>0</span>; regles<span class=&quot;br0&quot;>&amp;amp;#40;</span><span class=&quot;br0&quot;>&amp;amp;#41;</span>; <span class=&quot;kw4&quot;>char</span> *motCache = cacher<span class=&quot;br0&quot;>&amp;amp;#40;</span>motSecret<span class=&quot;br0&quot;>&amp;amp;#41;</span>; <a href=&quot;http://www.opengroup.org/onlinepubs/009695399/functions/printf.html&quot;><span class=&quot;kw3&quot;>printf</span></a><span class=&quot;br0&quot;>&amp;amp;#40;</span><span class=&quot;st0&quot;>&quot;Bienvenue dans le Pendu !&quot;</span><span class=&quot;br0&quot;>&amp;amp;#41;</span>; <span class=&quot;co1&quot;>//[...] </span><span class=&quot;br0&quot;>&amp;amp;#125;</span>&nbsp; J'affiche donc 2 fois le mot secret, et la j'obtiens 2 valeurs complètement différentes ce qui est bizarre vu que les 2 printf sont fait à la suite... La 1ere valeur obtenue est bien la bonne (c'est bien un mot du fichier dico.txt) mais la 2eme est une suite de caractères incompréhensible (du style : |5 0mw...etc) Voici le code de la fonction selectionnerMot() (au cas ou..) : char* selectionnerMot() { FILE* dico = fopen("dico.txt", "r"); if(dico == NULL) { printf("Erreur lors de l'ouverture du fichier."); exit(0); } long nombreMots = 0, motChoisi = 0; int caractereCourant; char motSelectionne[100] = ""; do { caractereCourant = fgetc(dico); if (caractereCourant == '') nombreMots++; } while(caractereCourant != EOF); motChoisi = aleatoire(nombreMots); rewind(dico); while(motChoisi&amp;gt;0) { caractereCourant = fgetc(dico); if(caractereCourant == '') motChoisi--; } fgets(motSelectionne, 100, dico); long taille = strlen(motSelectionne); motSelectionne[strlen(motSelectionne)-1] = ''; fclose(dico); return motSelectionne; } Pour l'indentation vous pouvez toujours attendre :p edit: en effet, problème
            • Partager sur Facebook
            • Partager sur Twitter
              22 octobre 2006 à 17:17:59

              Ca bug seb !!!! :lol::lol::lol::lol:

              /****************************************************************************/

              Citation : SdZ

              Warning: domxml_open_mem() [function.domxml-open-mem]: internal error in /var/www/sdz/lib/zcode/unparse.php on line 13

              Warning: domxml_open_mem() [function.domxml-open-mem]: Extra content at the end of the document in /var/www/sdz/lib/zcode/unparse.php on line 13




              [EDIT] Vous pouvez voir mon post plus haut, il fonctionne :)
              • Partager sur Facebook
              • Partager sur Twitter
                22 octobre 2006 à 17:51:39

                Salut

                Citation : Zost

                    printf("%s",motSecret);
                    printf("%s",motSecret);

                Pourquoi mettre deux fois ce printf??

                EDIT : désolé je n'ai pas lu le sujet
                • Partager sur Facebook
                • Partager sur Twitter
                  22 octobre 2006 à 19:43:36

                  Alors met ton sujet comme résolu ;)

                  Image utilisateur
                  • Partager sur Facebook
                  • Partager sur Twitter
                    22 octobre 2006 à 20:00:53

                    Merci :D:)

                    Bonne chance pour la suite de ton apprentissage ^^
                    • Partager sur Facebook
                    • Partager sur Twitter
                      22 octobre 2006 à 20:16:07

                      Citation : Zost

                      J'affiche donc 2 fois le mot secret, et la j'obtiens 2 valeurs complètement différentes ce qui est bizarre vu que les 2 printf sont fait à la suite...
                      La 1ere valeur obtenue est bien la bonne (c'est bien un mot du fichier dico.txt) mais la 2eme est une suite de caractères incompréhensible <...>

                      Ne pas mettre de codes bizarre, le serveur n'aime pas du tout...



                      Voici le code de la fonction selectionnerMot() (au cas ou..) :


                      char* selectionnerMot()
                      {
                         char motSelectionne[100] = "";
                         <...>
                         return motSelectionne;
                      }

                      Problème classique. Tu retournes l'adresse d'une variable locale. Elle devient invalide après l'exécution de la fonction...
                      • Partager sur Facebook
                      • Partager sur Twitter
                      Music only !

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown