D Programmazione - Operatori di assegnazione
I seguenti operatori di assegnazione sono supportati dal linguaggio D:
Operatore | Descrizione | Esempio |
---|---|---|
= | È un semplice operatore di assegnazione. Assegna i valori dagli operandi del lato destro all'operando del lato sinistro | C = A + B assegna il valore di A + B a C |
+ = | È l'operatore add AND di assegnazione. Aggiunge l'operando destro all'operando sinistro e assegna il risultato all'operando sinistro | C + = A è equivalente a C = C + A |
- = | È l'operatore di sottrazione AND di assegnazione. Sottrae l'operando destro dall'operando sinistro e assegna il risultato all'operando sinistro. | C - = A è equivalente a C = C - A |
* = | È moltiplicare AND operatore di assegnazione. Moltiplica l'operando destro con l'operando sinistro e assegna il risultato all'operando sinistro. | C * = A è equivalente a C = C * A |
/ = | È un operatore di divisione AND di assegnazione. Divide l'operando sinistro con l'operando destro e assegna il risultato all'operando sinistro. | C / = A è equivalente a C = C / A |
% = | È modulo AND operatore di assegnazione. Richiede il modulo utilizzando due operandi e assegna il risultato all'operando sinistro. | C% = A è equivalente a C = C% A |
<< = | È l'operatore di assegnazione AND di spostamento a sinistra. | C << = 2 è uguale a C = C << 2 |
>> = | È l'operatore di assegnazione AND di spostamento a destra. | C >> = 2 è uguale a C = C >> 2 |
& = | È un operatore di assegnazione AND bit per bit. | C & = 2 è uguale a C = C & 2 |
^ = | È OR esclusivo bit per bit e operatore di assegnazione. | C ^ = 2 è uguale a C = C ^ 2 |
| = | È OR bit per bit inclusivo e operatore di assegnazione | C | = 2 è uguale a C = C | 2 |
Esempio
Prova il seguente esempio per comprendere tutti gli operatori di assegnazione disponibili nel linguaggio di programmazione D:
import std.stdio;
int main(string[] args) {
int a = 21;
int c ;
c = a;
writefln("Line 1 - = Operator Example, Value of c = %d\n", c );
c += a;
writefln("Line 2 - += Operator Example, Value of c = %d\n", c );
c -= a;
writefln("Line 3 - -= Operator Example, Value of c = %d\n", c );
c *= a;
writefln("Line 4 - *= Operator Example, Value of c = %d\n", c );
c /= a;
writefln("Line 5 - /= Operator Example, Value of c = %d\n", c );
c = 200;
c = c % a;
writefln("Line 6 - %s= Operator Example, Value of c = %d\n",'\x25', c );
c <<= 2;
writefln("Line 7 - <<= Operator Example, Value of c = %d\n", c );
c >>= 2;
writefln("Line 8 - >>= Operator Example, Value of c = %d\n", c );
c &= 2;
writefln("Line 9 - &= Operator Example, Value of c = %d\n", c );
c ^= 2;
writefln("Line 10 - ^= Operator Example, Value of c = %d\n", c );
c |= 2;
writefln("Line 11 - |= Operator Example, Value of c = %d\n", c );
return 0;
}
Quando compili ed esegui il programma sopra, produce il seguente risultato:
Line 1 - = Operator Example, Value of c = 21
Line 2 - += Operator Example, Value of c = 42
Line 3 - -= Operator Example, Value of c = 21
Line 4 - *= Operator Example, Value of c = 441
Line 5 - /= Operator Example, Value of c = 21
Line 6 - %= Operator Example, Value of c = 11
Line 7 - <<= Operator Example, Value of c = 44
Line 8 - >>= Operator Example, Value of c = 11
Line 9 - &= Operator Example, Value of c = 2
Line 10 - ^= Operator Example, Value of c = 0
Line 11 - |= Operator Example, Value of c = 2