Page 1 sur 1

[c++] if (a == b||c||d) ca marche pas (résolu)

Publié : mar. 22 mars 2011, 11:36
par _alexmyself
salut,
je me met au c++ ces temps-ci et là je galère sur une broutille que je ne parvient pas à résoudre,
je trouve pas de solution parcequ'a mon avis je ne sait pas comment appeler correctement ce problème..
du coup je m'en remet à vous:

ca fonctionne:

Code : Tout sélectionner

if ( (a==b) || (a==c) || (a==d)){tralala;}
ca fonctionne pas:

Code : Tout sélectionner

if ( a== b||c||d){tralala;}
je souhaiterai utiliser la seconde forme pour que ce soit nettement plus lisible, mais en vain...
merci d'avance de toute aide

Tcho'!

Re: [c++] if (a == b||c||d) ca marche pas (en cours)

Publié : mar. 22 mars 2011, 11:45
par Calimero
La deuxième méthode n'a pas le sens que tu crois.

(a == b||c||d) signifie ( (a==b) || (c>0) || (d>0) )

C'est du C (pas spécifique C++).
Et je ne connais pas de compression possible.

Re: [c++] if (a == b||c||d) ca marche pas (en cours)

Publié : mar. 22 mars 2011, 11:53
par tuxce
Calimero a écrit : (a == b||c||d) signifie ( (a==b) || (c>0) || (d>0) )

Code : Tout sélectionner

( (a==b) || (c!=0) || (d!=0) )

Re: [c++] if (a == b||c||d) ca marche pas (en cours)

Publié : mar. 22 mars 2011, 12:01
par Calimero
J'avais pas pensé aux négatifs, mea culpa.

/me utilise presque systématiquement des unsigned int sauf besoin réel de valeurs négatives

Re: [c++] if (a == b||c||d) ca marche pas (en cours)

Publié : mar. 22 mars 2011, 12:08
par _alexmyself
misère de misère.. merci de vos réponses! , j'ai éssayé tellement de formes différentes et lu tellement de truc que j'y perdait mon latin, ca fait du bien d'avoir du retour 'lucide' :)