Operadores sizeof e ternários em Objective-C
Existem alguns outros operadores importantes, incluindo sizeof e ? : suportado pela linguagem Objective-C.
Operador | Descrição | Exemplo |
---|---|---|
tamanho de() | Retorna o tamanho de uma variável. | sizeof (a), onde a é inteiro, retornará 4. |
E | Retorna o endereço de uma variável. | &uma; fornecerá o endereço real da variável. |
* | Ponteiro para uma variável. | *uma; irá apontar para uma variável. |
? : | Expressão Condicional | Se a condição for verdadeira? Então, valor X: Caso contrário, valor Y |
Exemplo
Tente o exemplo a seguir para entender todos os operadores diversos disponíveis na linguagem de programação 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 você compila e executa o programa acima, ele produz o seguinte resultado -
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