Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
An assignment operation assigns the value of the right-hand operand to the storage location named by the left-hand operand. Therefore, the left-hand operand of an assignment operation must be a modifiable l-value. After the assignment, an assignment expression has the value of the left operand but is not an l-value.
Syntax
assignment-expression:
conditional-expressionunary-expression assignment-operator assignment-expression
assignment-operator: one of
= *= /= %= += –= <<= >>= &= ^= |=
The assignment operators in C can both transform and assign values in a single operation. C provides the following assignment operators:
Operator |
Operation Performed |
|---|---|
= |
Simple assignment |
*= |
Multiplication assignment |
/= |
Division assignment |
%= |
Remainder assignment |
+= |
Addition assignment |
–= |
Subtraction assignment |
<<= |
Left-shift assignment |
>>= |
Right-shift assignment |
&= |
Bitwise-AND assignment |
^= |
Bitwise-exclusive-OR assignment |
|= |
Bitwise-inclusive-OR assignment |
In assignment, the type of the right-hand value is converted to the type of the left-hand value, and the value is stored in the left operand after the assignment has taken place. The left operand must not be an array, a function, or a constant. The specific conversion path, which depends on the two types, is outlined in detail in Type Conversions.
See Also
Concepts
Assignment Operators: =, *=, /=, %=, +=, -=, <<=, >>=, &=, ^=, and |=