Ce n' (x ^ 0 x 1) != 0 signifie?

Je suis tombé sur l'extrait de code suivant

if( 0 != ( x ^ 0x1 ) )
     encode( x, m );

Ce n' x ^ 0x1 veux dire? C'est une technique standard?

  • Code de la dissimulation de l' est tout à fait standard.
  • Il ya quelques jours j'ai aussi eu quelques situation semblable, stackoverflow.com/questions/19730348/why-101-is-11-in-c
  • Cela peut être résolu avec la même approche qu'un "normal" d'équation: 0 != (x ^ 1) → xor deux côtés par 1 → (0 ^ 1) != (x ^ 1 ^ 1) → simplifier → 1 != x
  • Je ne vois pas comment if (1 != x) est dur à écrire.
  • Diverses observations, d'abord par @Spook, indiquer clairement que les type de x n'est pas donné - par conséquent, nous ne savons pas c'est un entier dans cette C++ tagged problème. Bien sûr, si c'est C ou x est un entier, la réponse est facile, mais ce n'est pas une donnée et la possibilité de surcharger les operator ^ existe.
  • Je ne vois pas en quoi cela fait de nombreuses upvotes...

InformationsquelleAutor KodeWarrior | 2013-12-19