Was macht ^ ?
-
Hallo!
Ich wollte mal fragen, was eigendlich der operator ^ unter c++ macht? War immer der meinung, der ist für den exponenten gut, aber 2^7 gibt mit zum beispiel 5 aus. Mache das jetzt mit der pow() funktion, würde mich aber trotsdem mal interessieren, was das teil macht.MfG
FloFri
-
-
Das ist ein logisches XOR.
-
Danke! Hatte eben schon gedacht, mein Compiler ist kaputt, weil 2^7 nicht das gewünschte Ergebnis gebracht hatte. War das noch von Delphi und Ähnlichem so gewohnt

-
Dieser Thread wurde von Moderator/in kingruedi aus dem Forum Rund um die Programmierung in das Forum C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Gregor@Home schrieb:
Das ist ein logisches XOR.
Nein, Bitweises XOR (also für 2 (10) ^ 7 (111) = 5 (101) in Klammern jeweils die Binäre Darstellung).
-
es gibt keinen logischen xor operator (aber logische AND, OR und NOT...). muss man sich also mit (x && !y) selber basteln.
-
(x && !y) || (!x && y)
-
in dem buch von galilleo stehst aber drin das auch mit ^ geht.
^ heisst entweder oder.
-
spoensche schrieb:
in dem buch von galilleo stehst aber drin das auch mit ^ geht.
^ heisst entweder oder.Was willst du damit sagen? Was geht mit xor?
Gruß Caipi
-
c.rackwitz schrieb:
es gibt keinen logischen xor operator (aber logische AND, OR und NOT...). muss man sich also mit (x && !y) selber basteln.
Der Ersatz für das logische xor ist der != Operator. Du musst lediglich darauf achten, dass beide Operanden vom Typ bool sind.
bool(a) != bool(b)IIRC gibts auf CodeProject einen Artikel, wie man einen Operatorersatz sich selber basteln kann. Dann schreibst du einfach nur noch
a logxor boder wie immer du den Bezeichner auch nennen willst.