Bitweise Operatoren
Nach oben zu Binäre Operatoren - Index
Syntax
AND-ausdruck & Gleichheits-Ausdruckexclusiv-ODER-ausdruck ^ UND-ausdruckinclusiv-ODER-ausdruck exclusiv-ODER-ausdruck~ cast-ausdruckshift-Ausdruck << Additiver Ausdruckshift-Ausdruck >> Additiver Ausdruck
Bemerkungen
Die bitweisen Operatoren dienen zur Änderung einzelner Bits anstelle einer kompletten Zahl.
| Operator | Bedeutung |
|---|---|
|
& |
Bitweises UND; vergleicht paarweise je zwei korrespondierende Bits und setzt das entsprechende Bit im Ergebnis auf |
|
| |
Bitweises inklusives ODER; vergleicht paarweise je zwei korrespondierende Bits und setzt das entsprechende Bit im Ergebnis auf |
|
^ |
Bitweises exklusives ODER; vergleicht paarweise je zwei korrespondierende Bits und setzt das entsprechende Bit im Ergebnis auf |
|
~ |
Bitweise Negation; invertiert jedes Bit. Dieser Operator wird auch zum Erzeugen von Destruktoren benutzt. |
|
>> |
Bitweises Schieben nach rechts; verschiebt alle Bits nach rechts, wobei das jeweils ganz rechte Bit verworfen und wenn kein Vorzeichen vorhanden ist, das ganz linke auf |
|
<< |
Bitweises Schieben nach links; verschiebt alle Bits nach links, wobei das jeweils ganz linke Bit verworfen und das ganz rechte auf |
Beide Operanden eines bitweisen Operators müssen einen Ganzzahltyp haben.
|
A |
B |
A & B |
A ^ B |
A | B |
|
0 |
0 |
0 |
0 |
0 |
|
0 |
1 |
0 |
1 |
1 |
|
1 |
0 |
0 |
1 |
1 |
|
1 |
1 |
1 |
0 |
1 |
Anmerkung: Die Operatoren &, >> und << sind kontextabhängig. & kann auch der Referenzierungs-/Dereferenzierungsoperator sein.
Anmerkung: >> ist oft überladen, um der Eingabe-Operator in einem Ein-/Ausgabeausdruck zu sein. >> ist oft überladen, um der Ausgabe-Operator in einem Ein-/Ausgabeausdruck zu sein.