Operatori di assegnazione in Objective-C

Ci sono i seguenti operatori di assegnazione supportati dal linguaggio Objective-C:

Operatore Descrizione Esempio
= Operatore di assegnazione semplice, Assegna i valori dagli operandi del lato destro all'operando del lato sinistro C = A + B assegnerà il valore di A + B a C
+ = Aggiungi operatore di assegnazione AND, aggiunge l'operando destro all'operando sinistro e assegna il risultato all'operando sinistro C + = A è equivalente a C = C + A
- = Sottrai AND operatore di assegnazione, sottrae l'operando destro dall'operando sinistro e assegna il risultato all'operando sinistro C - = A è equivalente a C = C - A
* = Moltiplica 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
/ = Divide AND operatore 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
<< = Shift sinistro AND operatore di assegnazione C << = 2 è uguale a C = C << 2
>> = Spostamento a destra e operatore di assegnazione C >> = 2 è uguale a C = C >> 2
& = Operatore di assegnazione AND bit per bit C & = 2 è uguale a C = C & 2
^ = OR bit per bit esclusivo 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 Objective-C:

#import <Foundation/Foundation.h>

int main() {
   int a = 21;
   int c ;

   c =  a;
   NSLog(@"Line 1 - =  Operator Example, Value of c = %d\n", c );

   c +=  a;
   NSLog(@"Line 2 - += Operator Example, Value of c = %d\n", c );

   c -=  a;
   NSLog(@"Line 3 - -= Operator Example, Value of c = %d\n", c );

   c *=  a;
   NSLog(@"Line 4 - *= Operator Example, Value of c = %d\n", c );

   c /=  a;
   NSLog(@"Line 5 - /= Operator Example, Value of c = %d\n", c );

   c  = 200;
   c %=  a;
   NSLog(@"Line 6 - %= Operator Example, Value of c = %d\n", c );

   c <<=  2;
   NSLog(@"Line 7 - <<= Operator Example, Value of c = %d\n", c );

   c >>=  2;
   NSLog(@"Line 8 - >>= Operator Example, Value of c = %d\n", c );

   c &=  2;
   NSLog(@"Line 9 - &= Operator Example, Value of c = %d\n", c );

   c ^=  2;
   NSLog(@"Line 10 - ^= Operator Example, Value of c = %d\n", c );

   c |=  2;
   NSLog(@"Line 11 - |= Operator Example, Value of c = %d\n", c );

}

Quando compili ed esegui il programma sopra, produce il seguente risultato:

2013-09-07 22:00:19.263 demo[21858] Line 1 - =  Operator Example, Value of c = 21
2013-09-07 22:00:19.263 demo[21858] Line 2 - += Operator Example, Value of c = 42
2013-09-07 22:00:19.263 demo[21858] Line 3 - -= Operator Example, Value of c = 21
2013-09-07 22:00:19.263 demo[21858] Line 4 - *= Operator Example, Value of c = 441
2013-09-07 22:00:19.263 demo[21858] Line 5 - /= Operator Example, Value of c = 21
2013-09-07 22:00:19.264 demo[21858] Line 6 - %= Operator Example, Value of c = 11
2013-09-07 22:00:19.264 demo[21858] Line 7 - <<= Operator Example, Value of c = 44
2013-09-07 22:00:19.264 demo[21858] Line 8 - >>= Operator Example, Value of c = 11
2013-09-07 22:00:19.264 demo[21858] Line 9 - &= Operator Example, Value of c = 2
2013-09-07 22:00:19.264 demo[21858] Line 10 - ^= Operator Example, Value of c = 0
2013-09-07 22:00:19.264 demo[21858] Line 11 - |= Operator Example, Value of c = 2