Operateurs booleens donc logiques : )
Bien le bonjour
j'ai une question, je ne suis pas du tout sur qu il existe une solution... je tente quand meme...
il existe en C++, les deux operateurs logiques && et || , donc soit le simple "ET", soit le "OU exclusif...
je ne trouve pas mention du simple "OU", qui pourrait s ecrire "&|" ... donc un operateur qui permette une condition telle que :
soit l une des deux conditions est vraie, soit les deux
Car il me semble que "||" n est pas vrai si les deux conditions sont remplies en meme temps...
merci de votre eclairage :?
Opérateur logique et binaire
Bonsoir,
Delias a raison de citer le ^ qui opère un ou exclusif. Mais c'est un ou exclusif binaire. Il n'opère pas sur des valeurs logiques ou interprétées comme tel mais sur les bits d'entiers.
Le xor logique n'existe pas dans ce langage.
Si le xor logique existait, supposons a = 0xF0F0 et b = 0x00FF, comme a et b sont différents de 0 ils seront interprétés comme a = true et b = true, alors a xor b serait false. mais a ^b = 0xF00F diffère de 0, il sera interprété comme true.
Cette différence de comportement logique vs binaire se retrouve entre || et |, entre && et &, entre ! et ~.
Salutations