Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

Operadores de incremento e decremento Master C:uso e práticas recomendadas

C - Operadores de incremento e decremento


O operador de incremento (++) incrementa o valor de uma variável em 1, enquanto o operador de decremento (--) diminui o valor.

Operadores de incremento e decremento são frequentemente usados na construção de loops contados em C (com o loop for). Eles também têm sua aplicação na travessia de arrays e aritmética de ponteiros.

Os operadores ++ e -- são unários e podem ser usados como prefixo ou posfixo para uma variável.

Exemplo de operadores de incremento e decremento


O exemplo a seguir contém várias instruções que demonstram o uso de operadores de incremento e decremento com diferentes variações -
04 

Saída


Quando você executa este código, ele produzirá a seguinte saída -
13 

Exemplo de explicação


Em outras palavras, "a++" tem o mesmo efeito que "++a", pois ambas as expressões incrementam o valor da variável "a" em 1. Da mesma forma, "a--" tem o mesmo efeito que "--a".

A expressão "a++;" pode ser tratado como equivalente à afirmação "a =a + 1;". Aqui, a expressão à direita adiciona 1 a “a” e o resultado é atribuído novamente a 1, assim o valor de “a” é incrementado em 1.

Da mesma forma, "b--;" é equivalente a "b =b 1;".

Tipos de operador de incremento


Existem dois tipos de operadores de incremento – pré-incremento e post incremento .

Operador de pré-incremento (prefixo)


Numa expressão, o operador de pré-incremento aumenta o valor de uma variável em 1 antes da utilização do valor da variável.

Sintaxe

21 

Exemplo


No exemplo a seguir, estamos utilizando um operador de pré-incremento, onde o valor de “x” será aumentado em 1, e então o valor aumentado será utilizado na expressão.
35 
Quando você executa este código, ele produzirá a seguinte saída -
43 

Operador de incremento pós (Postfix)


Numa expressão, o operador pós-incremento aumenta o valor de uma variável em 1 após a utilização do valor da variável.

Sintaxe

51 

Exemplo


No exemplo a seguir, estamos utilizando o operador pós-incremento, onde o valor de “x” será utilizado na expressão e depois será aumentado em 1.
64 
Quando você executa este código, ele produzirá a seguinte saída -
76 

Tipos de operador de decremento


Existem dois tipos de operadores de decremento – pré-decremento e pós-decremento .

Operador de pré-decremento (prefixo)


Em uma expressão, o operador de pré-decremento diminui o valor de uma variável em 1 antes de usar o valor da variável.

Sintaxe

83 

Exemplo


No exemplo a seguir, estamos usando um operador de pré-decremento, onde o valor de “x” será diminuído em 1, e então o valor diminuído será usado na expressão.
93 
Quando você executa este código, ele produzirá a seguinte saída -
100 

Operador de decremento pós (Postfix)


Numa expressão, o operador pós-decremento diminui o valor de uma variável em 1 após a utilização do valor da variável.

Sintaxe

118 

Exemplo


No exemplo a seguir, estamos utilizando o operador pós-decremento, onde o valor de “x” será utilizado na expressão e depois será diminuído em 1.
123 
Quando você executa este código, ele produzirá a seguinte saída -
137 

Mais exemplos de operadores de incremento e decremento

Exemplo 1


O exemplo a seguir destaca o uso de incremento/decremento de prefixo/postfix -
140 

Saída


Quando você executa este código, ele produzirá a seguinte saída -
152 
O exemplo acima mostra que os operadores prefixo e pós-fixo têm o mesmo efeito no valor da variável operando. Entretanto, quando esses operadores “++” ou “--” aparecem junto com os outros operadores em uma expressão, eles se comportam de maneira diferente.

Exemplo 2


No código a seguir, os valores iniciais das variáveis "a" e "b" são iguais, mas a função printf() exibe valores diferentes -
169 

Saída


Execute o código e verifique sua saída -
172 
No primeiro caso, a função printf() imprime o valor de “x” e depois incrementa seu valor. No segundo caso, o operador de incremento é executado primeiro, a função printf() usa o valor incrementado para impressão.

Precedência de operadores de incremento e decremento


Existem vários operadores em C. Quando vários operadores são usados em uma expressão, eles são executados de acordo com sua ordem de precedência. Os operadores de incremento e decremento se comportam de maneira diferente quando usados ​​junto com outros operadores.

Quando uma expressão consiste em operadores de incremento ou decremento juntamente com outros operadores, as operações de incremento e decremento são executadas primeiro. Os operadores de incremento e decremento pós-fixados têm maior precedência do que os operadores de incremento e decremento de prefixo.

Leia também: Precedência do Operador em C

Exemplo 1


Dê uma olhada no exemplo a seguir -
189 

Saída


Execute o código e verifique sua saída -
190 
Como "x++" aumenta o valor de "x" para 6, você esperaria que "z" também fosse 6. No entanto, o resultado mostra "z" como 5. Isso ocorre porque o operador de atribuição tem uma precedência maior sobre o operador de incremento pós-fixado. Portanto, o valor existente de “x” é atribuído a “z”, antes de incrementar “x”.

Exemplo 2


Dê uma olhada em outro exemplo abaixo -
205 

Saída


Quando você executa este código, ele produzirá a seguinte saída -
213 
O resultado pode ser confuso, pois o valor de "y" e também de "z" agora é 6. A razão é que o operador de incremento de prefixo tem uma precedência mais alta do que o operador de atribuição. Conseqüentemente, “y” é incrementado primeiro e então seu novo valor é atribuído a “z”.

A associatividade dos operadores também desempenha um papel importante. Para operadores de incremento e decremento, a associatividade é da esquerda para a direita. Portanto, se houver vários operadores de incremento ou decremento em uma única expressão, o operador mais à esquerda será executado primeiro, movendo-se para a direita.

Exemplo 3


Neste exemplo, a expressão de atribuição contém os operadores prefixo e pós-fixo.
222 

Saída


Execute o código e verifique sua saída -
231 
Neste exemplo, a primeira operação a ser feita é “y++” (“y” passa a ser 6). Em segundo lugar, o operador "+" adiciona "x" (que é 5) e "y", o resultado atribuído a "z" como 11, e então "x++" incrementa "x" para 6.

Usando o operador de incremento em loop


Em C, a sintaxe mais comumente usada de um loop for é a seguinte -
245 

Exemplo


O corpo do loop é executado para todos os valores de uma variável entre os valores inicial e final, incrementando-a a cada rodada.
254 

Saída


Quando você executa este código, ele produzirá a seguinte saída -
269 

Linguagem C

  1. Sobrecarga do método C#
  2. Lista de inicialização do construtor C++:por que e como usá-la
  3. C - typedef
  4. Matriz irregular em C#
  5. Funções em Programação C com Exemplos:Recursiva e Inline
  6. C - Gerenciamento de Memória
  7. C# - Genéricos
  8. C# - Nullables
  9. Recursão C++
  10. C++ if, if...else e aninhado if...else