Partilhar via


Operadores aritméticos unários

Os operadores C unary plus, aritmética-negação, complemento e lógica-negação são discutidos na lista a seguir:

Operador Descrição
+ O operador unary plus que precede uma expressão entre parênteses força o agrupamento das operações fechadas. É usado com expressões que envolvem mais de um operador binário associativo ou comutativo. O operando deve ter tipo 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 aritmética produz o negativo (complemento de dois) de seu operando. O operando deve ser um valor integral ou flutuante. Este operador executa as conversões aritméticas usuais.
~ O operador bitwise-complement (ou bitwise-NOT) produz o complemento bitwise de seu operando. O operando deve ser do tipo integral. Este operador realiza 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ógico-NÃO) produz o valor 0 se seu operando for verdadeiro (diferente de zero) e o valor 1 se seu operando for falso (0). O resultado tem int tipo. O operando deve ser um valor integral, flutuante ou de ponteiro.

Operações aritméticas unárias em ponteiros são ilegais.

Exemplos

Os exemplos a seguir ilustram os operadores aritméticos unários:

short x = 987;
    x = -x;

No exemplo acima, o novo valor de x é o negativo de 987, ou -987.

unsigned short y = 0xAAAA;
    y = ~y;

Neste exemplo, o novo valor atribuído a y é o complemento do valor não assinado 0xAAAA, ou 0x5555.

if( !(x < y) )

Se x for maior ou igual a y, o resultado da expressão é 1 (verdadeiro). Se x for menor que y, o resultado será 0 (falso).

Ver também

Expressões com operadores unários