sizeof e operatori ternari in Objective-C
Ci sono pochi altri operatori importanti tra cui sizeof e ? : supportato da Objective-C Language.
Operatore | Descrizione | Esempio |
---|---|---|
taglia di() | Restituisce la dimensione di una variabile. | sizeof (a), dove a è intero, restituirà 4. |
& | Restituisce l'indirizzo di una variabile. | &un; fornirà l'indirizzo effettivo della variabile. |
* | Puntatore a una variabile. | *un; punterà a una variabile. |
? : | Espressione condizionale | Se la condizione è vera? Quindi valore X: altrimenti valore Y |
Esempio
Prova il seguente esempio per comprendere tutti gli operatori vari disponibili nel linguaggio di programmazione Objective-C:
#import <Foundation/Foundation.h>
int main() {
int a = 4;
short b;
double c;
int* ptr;
/* example of sizeof operator */
NSLog(@"Line 1 - Size of variable a = %d\n", sizeof(a) );
NSLog(@"Line 2 - Size of variable b = %d\n", sizeof(b) );
NSLog(@"Line 3 - Size of variable c= %d\n", sizeof(c) );
/* example of & and * operators */
ptr = &a; /* 'ptr' now contains the address of 'a'*/
NSLog(@"value of a is %d\n", a);
NSLog(@"*ptr is %d.\n", *ptr);
/* example of ternary operator */
a = 10;
b = (a == 1) ? 20: 30;
NSLog(@"Value of b is %d\n", b );
b = (a == 10) ? 20: 30;
NSLog(@"Value of b is %d\n", b );
}
Quando compili ed esegui il programma sopra, produce il seguente risultato:
2013-09-07 22:46:22.702 demo[24593] Line 1 - Size of variable a = 4
2013-09-07 22:46:22.703 demo[24593] Line 2 - Size of variable b = 2
2013-09-07 22:46:22.703 demo[24593] Line 3 - Size of variable c= 8
2013-09-07 22:46:22.703 demo[24593] value of a is 4
2013-09-07 22:46:22.703 demo[24593] *ptr is 4.
2013-09-07 22:46:22.703 demo[24593] Value of b is 30
2013-09-07 22:46:22.703 demo[24593] Value of b is 20