Modulo-Zuweisungs-Operator %=
Der Modulo-Zuweisungs-Operator führt eine Restwert-Division aus, indem der Wert der links des Operator stehenden Variablen durch den rechts des Operators stehenden Wert geteilt wird. Das Resultat wird zurück in die Variable gespeichert.
Details
Der Modulo-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 Modulo-Zuweisungs-Operator verhält sich genau gleich wie der Zuweisungsoperator, nur dass er eine zusätzliche Modulo-Berechnung ausführt. Für Details über die Eigenschaften einer Modulo-Zuweisung wird hier somit auf die Beschreibung des Zuweisungsoperators und des Modulo-Operators verwiesen. Als zusätzliche Erläuterung des Modulo-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 Modulo-Zuweisung genauso wie bei allen Zuweisungs-Operatoren der komplette rechte Teil nach den Gleichheitszeichen als EIN Operand ausgewertet wird.