Partage
  • Partager sur Facebook
  • Partager sur Twitter

Copie de chaîne ce caractères

Fais maison. ^^

Sujet résolu
    26 juillet 2006 à 12:40:04

    Eh oui, c'est encore moi ! Bonjour bonjour ! :p

    Je suis à l'exercice que M@teo a demandé de faire dans le chapitre des chaînes de caractères. Plus précisement dans la copie d'une chaîne de caractères à faire soi-même. ^^

    Alors j'ai essayé de le faire, mais devinez quoi...

    Eh oui, ça a pas marché. :lol:

    Voici mon code :

    #include <stdio.h>
    #include <stdlib.h>

    int main(int argc, char *argv[])
    {
        char chaine[] = "Texte", copie[100] = {0};

        copieChaine(copie, chaine);

        printf("Chaine vaut : \t%s\n\n", chaine);
        printf("Copie vaut : \t%s\n\n", copie);
     
      system("PAUSE");     
      return 0;
    }

    void copieChaine(char* copie, const char* chaine)
    {
         long i = 0, caractere = 0;
         
         do
         {
              copie[i] = chaine[i];
              caractere = chaine[i];
              i++;
         }while(caractere != '\0');
    }


    Merci pour vos futurs réponses. ;)

    [EDIT] Yaoups... le titre c'est "Copie de chaîne de caractères" ! :lol:
    • Partager sur Facebook
    • Partager sur Twitter
      26 juillet 2006 à 12:46:43

      Tu peut dire ce qui ne marche pas ? Ou ? Execution ? Compilation ? Resultat ?
      • Partager sur Facebook
      • Partager sur Twitter
        26 juillet 2006 à 12:47:04

        Correction :

        #include <stdio.h>
        #include <stdlib.h>

        //Et le proto alors ?
        void copieChaine(char *copie, const char *chaine);

        int main(int argc, char *argv[])
        {
            char chaine[] = "Texte", copie[100] = {0};

            copieChaine(copie, chaine);

            printf("Chaine vaut : \t%s\n\n", chaine);
            printf("Copie vaut : \t%s\n\n", copie);
         
          //system("PAUSE"); -> berk un system
          getchar();     
          return 0;
        }

        void copieChaine(char* copie, const char* chaine)
        {
             //Essaye avec un char
             long i/*, caractere = 0*/;
             char caractere = 0;     

             for(i = 0 ; ; i++)
             {
                  //La vérification est avant la copie
                  caractere = chaine[i];
                  if(caractere == '\0')
                      break;

                  copie[i] = chaine[i];
             }
             return;
        }
        • Partager sur Facebook
        • Partager sur Twitter
          26 juillet 2006 à 12:51:08

          Oh la la... dire que j'ai fais le chapitre des prototypes il n'y a pas longtemps. o_O

          Je crois que j'ai droit à une bonne baffe moi. :lol:

          Merci beaucoup. :)

          PS : ça plantait dans la compilation. :-°
          • Partager sur Facebook
          • Partager sur Twitter
            26 juillet 2006 à 12:57:46

            Citation : Kagura Jokunoichi

            PS : ça plantait dans la compilation. :-°


            C'est ce que je pensais, mais quand il y a pas de détails (comme, "ou sa plante"), je regarde pas ! ^^
            ++
            • Partager sur Facebook
            • Partager sur Twitter
              26 juillet 2006 à 13:10:46

              OK, je serai plus précis à l'avenir. ;)
              • Partager sur Facebook
              • Partager sur Twitter

              Copie de chaîne ce caractères

              × 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