Operadores de atribuição em C e incremento (++) / decremento (--) explicados.
= atribui, == compara+= -= *= /=++ adiciona 1, -- subtrai 1++i vs pós-fixado i++= Não Significa "igual"a = b significa "armazene o valor de b em a". Não é o sinal de igual da matemática.int a, b; a = 5; // armazena 5 em a b = a + 3; // armazena (a+3)=8 em b a = a + 1; // armazena (a+1)=6 em a (a era 5, agora é 6)
a = a + 1 não faria sentido como equação, mas em C significa "pegue o valor atual de a, some 1 e guarde o resultado de volta em a" — então a simplesmente aumenta em 1.| Sintaxe | Significado | Exemplo | Resultado (quando a=10) |
|---|---|---|---|
a += b | a = a + b | a += 3 | a = 13 |
a -= b | a = a - b | a -= 4 | a = 6 |
a *= b | a = a * b | a *= 2 | a = 20 |
a /= b | a = a / b | a /= 3 | a = 3 |
a %= b | a = a % b | a %= 3 | a = 1 |
sum += num; aparecem o tempo todo em C, C++, Java e Python.a crescer. Ajuda a criar intuição para o clássico sum += i dentro de um laço.for (int i = 1; i <= n; i++) sum += i; simplesmente soma i em sum a cada passo. Aperte o botão algumas vezes para pegar o jeito.for.int i = 5; i++; // o mesmo que i = i + 1. i vira 6 i--; // o mesmo que i = i - 1. i volta para 5 ++i; // também i=i+1 (forma prefixada) for (int i = 0; i < 10; i++) { ... } // o mais comum em for
i original; depois i aumenta em 1.i aumenta em 1 primeiro; o valor da expressão é o novo i.++i (prefixado) e i++ (pós-fixado) dentro de atribuições e compare os resultadosa += 3 e a *= 2int a um double e veja a conversão automáticaTeste seu entendimento desta aula!
a += 3 equivale a a = a + 3, então 5 + 3 = 8.
a++ é pós-incremento: o valor atual de a (5) é atribuído a b primeiro e só depois a vira 6.
++a é pré-incremento: a vira 6 primeiro, e esse novo valor é atribuído a b.