Operadores unários aritmética
O c unário plus, negação de aritmética, complemento e operadores negação lógica são discutidos na lista a seguir:
Operador |
Descrição |
---|---|
+ |
Precede uma expressão entre parênteses de operador de adição unário força o agrupamento das operações fechadas.Ele é usado com expressões envolvendo mais de um operador binário associativo ou comutativa.O operando deve ter o tipo de aritmético.O resultado é o valor do operando.Um operando integral passa por promoção integral.O tipo do resultado é o tipo do operando promovido. |
– |
O operador de negação de aritmética produz o negativo (complemento de dois) do seu operando.O operando deve ser um valor integral ou flutuante.Este operador executa conversões aritméticas usuais. |
~ |
O operador bit a bit complemento (ou não-bit a bit) produz o bit a bit complemento do seu operando.O operando deve ser do tipo integral.Este operador executa conversões aritméticas usuais; o resultado tem o tipo do operando após a conversão. |
! |
O operador de negação lógica-(lógica não) produz o valor 0 se o seu operando é verdadeiro (diferente de zero) e o valor 1 se seu operando for false (0).O resultado tem int tipo.O operando deve ser uma integral, flutuante ou valor do ponteiro. |
Operações de unário aritméticas em ponteiros são ilegais.
Exemplos
Os exemplos a seguir ilustram os operadores unários aritméticos:
short x = 987;
x = -x;
No exemplo acima, o novo valor de x é o negativo do 987 ou –987.
unsigned short y = 0xAAAA;
y = ~y;
Neste exemplo, o novo valor atribuído a y é o complemento de um do valor não assinado 0xAAAA ou 0x5555.
if( !(x < y) )
Se x é maior que ou igual a y, o resultado da expressão é 1 (verdadeiro).Se x é menor que y, o resultado é 0 (FALSO).