Partage
  • Partager sur Facebook
  • Partager sur Twitter

condition préprocesseur

    17 juillet 2006 à 22:04:00

    Boujour, j'ai essayer de faire une condition avec les directive du préprocesseur mais je ne c'est pas pour quel raison, sa ne marche pas :o .

    </code>







    #define MAJEUR(age)
    #if age == 20
    printf("wow!!!");
    #elif age == 21
    printf("ok");
    #endif



    int main()
    {

    long age = 0;


    scanf("%ld" ,&age);

    MAJEUR(age)

    return 0;
    }

    <code type="c">
    • Partager sur Facebook
    • Partager sur Twitter
      17 juillet 2006 à 22:59:33

      Relis le chapitre sur les macros.
      Pour faire une macro tu doit mettre un antislash a la fin de chaque ligne.

      Et pour les conditions et le reste, c'est la même synaxe que dans le code.

      En gros ça donne ça :


      #define MAJEUR(age) if (age == 20) \
                          printf("wow!!!"); \
                          else if (age == 21) \
                          printf("ok");



      int main()
      {

      long age = 0;


      scanf("%ld" ,&age);

      MAJEUR(age)

      return 0;
      }


      Voila :)
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        17 juillet 2006 à 23:01:15

        #define ne fonctionne que jusqu'a la fin de la ligne. Il faut donc mettre tout ton define sur une seule ligne.
        (il y a un moyen de le faire tenir sur plusieurs lignes, mais je ne m'en souviens plus).
        • Partager sur Facebook
        • Partager sur Twitter
          18 juillet 2006 à 0:40:11

          Comme Tim l'a si bien dit ;) c'est de mettre des backslashs ou de faire sur une seule ligne
          • Partager sur Facebook
          • Partager sur Twitter
            18 juillet 2006 à 17:11:17

            ok merci, mais si ont regarde dans le tuto de mateo sur le préprosseseur ont remarque qu'il met un endif a la fin de la condition. Ce n'est donc pas oubligatoire?
            • Partager sur Facebook
            • Partager sur Twitter

            condition préprocesseur

            × 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