Partage
  • Partager sur Facebook
  • Partager sur Twitter

[C] Problème de if avec les chaînes de caractères

Sujet résolu
    19 avril 2006 à 14:47:44

    Bonjour,

    je débute en C avec l'exellent cours de Mateo,
    j'en suis au chapitre sur les chaînes de caractères.

    J'ai donc essayé de m'entraîner un peu avec, mais j'ai un gros soucis, j'ai tout essayé je ne comprend pas pourquoi cela ne marche pas.

    Le code :
    void Papotte ()
    {

        // Initialisation

        char saisie_prenom[100], reponse_papotte[5];


        // Debut de la papotte

        printf ("Bonjour, je m'appelle Papotte. \nEt toi ?\n\n");
        scanf ("%s", saisie_prenom);
        printf ("\n\nSalut a toi, %s !");
        printf ("\n\nVeux-tu papoter avec moi ?\n\n");
        scanf ("%s", reponse_papotte);

        // L'utilisateur a-t-il envie de papoter ?

        printf ("%s", reponse_papotte);

        // BUUUUUUUUUUUG !

        if (reponse_papotte == "oui")
        { // Si oui, envoi de la fonction superPapoteuse !
            printf("\n\n");
            superPapoteuse(saisie_prenom);
        }
        else if (reponse_papotte == "non")
        { // Si non, adieu !

            printf ("\n\nSnif ! Adieu %s ...\n\n, saisie_prenom");
            main();
        }
        else
        { // Si ni oui ni non, attanzioune !
            printf ("\n\nMalheureux, tu ne peux repondre que par oui ou par non !\n");
            printf ("\n\nTu es renvoye au menu general, ca t'apprendra salopiot ! (non mais oh quoi a la fin...)\n\n\n");
            main();
        } // Si rien du tout, rien du tout !

        // Fin de la fonction

    }


    Mon problème est que lorsque je tape "oui" ou "non", je me retrouve au else (renvoyé à la fonction main() ) :euh:

    Merci d'avance pour votre aide :D
    • Partager sur Facebook
    • Partager sur Twitter
      19 avril 2006 à 14:50:25

      Pour comparer deux chaines : strcmp();
      Une chaine de caractere est un tableau de char !
      • Partager sur Facebook
      • Partager sur Twitter
        19 avril 2006 à 14:51:36

        Heu alors je ne peux pas faire de if avec les chaines ?!
        • Partager sur Facebook
        • Partager sur Twitter
          19 avril 2006 à 14:53:18

          Salut :)

          Tu dois faire :
          if(strcmp(reponse_papotte,"oui") == 0 )
          {
            // ...
          }
          • Partager sur Facebook
          • Partager sur Twitter
            19 avril 2006 à 14:54:48

            Hiiiiiiii je te dois une vie PianoPâriss, merci :D
            • Partager sur Facebook
            • Partager sur Twitter
              19 avril 2006 à 15:55:14

              Merci , j'en ai 15 maintenant :p
              • Partager sur Facebook
              • Partager sur Twitter
                19 avril 2006 à 16:20:25

                EDIT : ce que j'ai dit est faux
                • Partager sur Facebook
                • Partager sur Twitter

                [C] Problème de if avec les chaînes de 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