Bitweise OR-Zuweisungs-Operator |=
Der Bitweise-OR-Zuweisungs-Operator verknüpft den Wert, der rechts des Operators steht mit dem Wert der links des Operator stehenden Variablen mittels dem bitweisen-OR-Operator und speichert das Resultat zurück in die Variable.
01001001100101100000001011010010
00111010110111100110100010110001
01111011110111100110101011110011
Details
Der Bitweise-OR-Zuweisungs-Operator erwartet links einen lvalue und rechts einen rvalue und wird von rechts nach links abgearbeitet. Der Rückgabewert ist in C ein rvalue: Der Wert des linken Operanden nach der Zuweisung. in C++ ist der Rückgabewert ein lvalue: Der (mittlerweile zugewiesene) linke Operand selbst.
Der Bitweise-OR-Zuweisungs-Operator verhält sich genau gleich wie der Zuweisungsoperator, nur dass er eine zusätzliche OR-Verknüpfung ausführt. Für Details über die Eigenschaften einer Bitweise-OR-Zuweisung wird hier somit auf die Beschreibung des Zuweisungsoperators und des Bitweise-OR-Operators verwiesen. Als zusätzliche Erläuterung des Bitweise-OR-Zuweisungs-Operators im Bezug zum einfachen Zuweisungsoperator genügen folgende zwei Programmzeilen, welche absolut äquivalent sind:
Die gesetzten runden Klammern deuten an, dass aufgrund der Operatoren-Rangordnung bei der Bitweise-OR-Zuweisung genauso wie bei allen Zuweisungs-Operatoren der komplette rechte Teil nach den Gleichheitszeichen als EIN Operand ausgewertet wird.
Der Bitweise-OR-Zuweisungs-Operator wird auch häufig für Masken verwendet.