Opérateurs d'assignation C
Une opération d'assignation assigne la valeur de l'opérande droit à l'emplacement de stockage nommé par l'opérande gauche. Par conséquent, l'opérande gauche d'une opération d'assignation doit être une l-value modifiable. Après l'assignation, une expression d'assignation a la valeur de l'opérande gauche mais n'est pas une l-value.
Syntaxe
assignment-expression :
conditional-expressionunary-expression assignment-operator assignment-expression
assignment-operator : un des éléments suivants :
= *= /= %= += –= <<= >>= &= ^= |=
Les opérateurs d'assignation en langage C peuvent transformer et assigner des valeurs dans une même opération. C propose les opérateurs d'assignation suivants :
Opérateur |
Opération effectuée |
---|---|
= |
Assignation simple |
*= |
Assignation de multiplication |
/= |
Assignation de division |
%= |
Assignation de reste |
+= |
Assignation d'addition |
–= |
Assignation de soustraction |
<<= |
Assignation de décalage vers la gauche |
>>= |
Assignation de décalage vers la droite |
&= |
Assignation d'opération AND au niveau du bit |
^= |
Assignation d'opération OR exclusive au niveau du bit |
|= |
Assignation d'opération OR inclusive au niveau du bit |
Dans l'assignation, le type de la valeur droite est converti pour correspondre au type de la valeur gauche, et la valeur est stockée dans l'opérande gauche après l'assignation. L'opérande gauche ne doit pas être un tableau, une fonction ni une constante. Le chemin d'accès de conversion spécifique, qui dépend des deux types, est décrit en détail dans Conversions de type.