IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Comment écrire l'opérateur "ou" (||) ? [Débutant(e)]


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    899
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 899
    Par défaut Comment écrire l'opérateur "ou" (||) ?
    bonsoir à tous,
    je débute en C et j'ai besoin de l'opérateur logique "ou" je rentre || dans mon code et le compilateur le rejette . Y a t-il une procédure pour le rentrer ? Merçi de m'aider si possible

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 17
    Par défaut
    C'est bien || qui correspond à "ou" en langage C mais peut-être as-tu oublié des parenthèses dans ton code ? Peux tu nous donner le morceau de ton code pour que nous puissions t'aider plus clairement?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    899
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 899
    Par défaut Le "OU" en C
    Merçi pour ta réponse ; voiçi le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    while (rep!='O') || (i>LGMAX);
    A +

  4. #4
    Membre émérite
    Avatar de Freed0
    Profil pro
    Étudiant
    Inscrit en
    Mars 2005
    Messages
    635
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2005
    Messages : 635
    Par défaut
    Comme l'a dit Archy27, il manque des paranthèses
    Dans ton cas, ta boucle est vide. Je ne sais pas si c'est volontaire, mais voici le code corrigé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while ((rep != 'O') || (i > LGMAX))
    {
       /* Corps de la boucle */
    }

  5. #5
    Membre confirmé Avatar de Jordinateur
    Profil pro
    Inscrit en
    Février 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 119
    Par défaut
    Comme l'a dit Archy27, il manque des paranthèses
    Dans ton cas, ta boucle est vide. Je ne sais pas si c'est volontaire, mais voici le code corrigé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while ((rep != 'O') || (i > LGMAX))
    {
       /* Corps de la boucle */
    }

    ou plutot

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while (rep != 'O' || i > LGMAX)
    {
       /* Corps de la boucle */
    }
    Dites-moi si c'est la même chose ou si jme trompe !

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    865
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 865
    Par défaut
    Dites-moi si c'est la même chose ou si jme trompe !
    C'est effectivement la même chose.
    Toutefois, tout le monde ne maîtrise pas comme toi les règles de précédence des opérateurs. On préférera donc l'écriture de Freed0 qui n'est pas ambiguë. A la lecture, on sait aussitôt ce qu'il a voulu faire. A la tienne, non.

    Ici, ça va encore mais là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while (a || b && c || d) {
     
    }
    Qu'ai-je voulu faire ?

+ Répondre à la discussion
Cette discussion est résolue.

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo