Witness 87 Posted August 18, 2016 Boas Pessoal eu gostaria de saber o que significa x++ e ++x por exemplo for( b = 5; b < 100000; b++) Share this post Link to post Share on other sites
Loading 480 Posted August 18, 2016 (edited) x++ significa incremento, ou seja, vai adicionando ao valor x, 1 unidade. ++x não sei, não estudei c++... O que tens aí: for( b = 5; b < 100000; b++) Significa basicamente: Sendo que o b=5, ir acrescentando uma unidade até que o valor de b=100000 (b=6, b=7, b=8, etc etc, basicamente b = b+1 até que b seja igual a 100000). Sempre que o valor de b aumenta, ele vai te executar o código que tens abaixo do for. Ele só para de executar o código que tens abaixo do for quando o valor de b atingir 100000, ou seja, ele executa isso 99994 vezes... Não sei se expliquem decentemente, mas é isso ._. Edited August 18, 2016 by Lσα∂ιηg (see edit history) 2 Cσяvσ⋆ and Witness reacted to this Share this post Link to post Share on other sites
thecrazy 1,193 Posted August 18, 2016 int main () { int x = 1; printf ("Valor de X: %d \n", x++); printf ("Novo valor de x: %d \n", x); int y = 1; printf ("%valor de y: %d \n", ++y); printf ("novo valor de y: %d\n" , y); } Experimenta correr isso, acho que com este exemplo deves entender ._. Basicamente, x++ vai aumentar uma unidade na próxima vez que o x for chamada, ou seja, 1º x= 1, 2º x=2 ++x aumenta logo uma unidade, 1º x=2; 2º x=2 É a unica maneira que consigo explicar ;-; 1 Witness reacted to this Share this post Link to post Share on other sites
MiguelSousa 55 Posted August 18, 2016 x++ = aumenta em 1 o valor da variável, após a instrução atual ter corrido. ++x = aumenta em 1 o valor da variável, antes da instrução atual ter corrido. No exemplo do ghost, mostraria que x == 1 (primeira linha) e x == 2 (segunda linha) Sendo que y == 2 em ambas as linhas. 2 Witness and thecrazy reacted to this Share this post Link to post Share on other sites
Witness 87 Posted August 18, 2016 x++ significa incremento, ou seja, vai adicionando ao valor x, 1 unidade. ++x não sei, não estudei c++... O que tens aí: for( b = 5; b < 100000; b++) Significa basicamente: Sendo que o b=5, ir acrescentando uma unidade até que o valor de b=100000 (b=6, b=7, b=8, etc etc, basicamente b = b+1 até que b seja igual a 100000). Sempre que o valor de b aumenta, ele vai te executar o código que tens abaixo do for. Ele só para de executar o código que tens abaixo do for quando o valor de b atingir 100000, ou seja, ele executa isso 99994 vezes... Não sei se expliquem decentemente, mas é isso ._. acho que percebi o x++ int main () { int x = 1; printf ("Valor de X: %d \n", x++); printf ("Novo valor de x: %d \n", x); int y = 1; printf ("%valor de y: %d \n", ++y); printf ("novo valor de y: %d\n" , y); } Experimenta correr isso, acho que com este exemplo deves entender ._. Basicamente, x++ vai aumentar uma unidade na próxima vez que o x for chamada, ou seja, 1º x= 1, 2º x=2 ++x aumenta logo uma unidade, 1º x=2; 2º x=2 É a unica maneira que consigo explicar ;-; não entendi o ++x x++ = aumenta em 1 o valor da variável, após a instrução atual ter corrido. ++x = aumenta em 1 o valor da variável, antes da instrução atual ter corrido. No exemplo do ghost, mostraria que x == 1 (primeira linha) e x == 2 (segunda linha) Sendo que y == 2 em ambas as linhas. não entendi bem o ++x Share this post Link to post Share on other sites
thecrazy 1,193 Posted August 18, 2016 Imagina que tens o x = 1 e tens x++. Na 1ª vez que chamares o x, o x tem valor 1. E na 2ª vez o que vai ter o valor 2 . Agora imaginas que tens o x = 1 e tens ++x. Na 1ª vez que chamares o x, vai ter logo valor 2 e não 1. Basicamente incrementa logo o valor na 1ª vez que é chamada e não na seguinte ! 1 Witness reacted to this Share this post Link to post Share on other sites
Witness 87 Posted August 18, 2016 Imagina que tens o x = 1 e tens x++. Na 1ª vez que chamares o x, o x tem valor 1. E na 2ª vez o que vai ter o valor 2 . Agora imaginas que tens o x = 1 e tens ++x. Na 1ª vez que chamares o x, vai ter logo valor 2 e não 1. Basicamente incrementa logo o valor na 1ª vez que é chamada e não na seguinte ! ah ok ja percebi Share this post Link to post Share on other sites
MiguelSousa 55 Posted August 18, 2016 x++ Mostra o valor original, após tudo correr aumenta em 1 unidade esse mesmo valor. ++x Mostra o valor aumentado em 1 unidade, antes que as instruções corram. Por exemplo: x == 1 resultado = 5 + 4 + x++ será 10. Da segunda vez que correres será 11, pois inicialmente x == 1,ao correr a segunda vez x será 2. enquanto que: x == 1 resultado = 5 + 4 + ++x será 11. Da segunda vez que correres será 12, pois inicialmente x == 1, mas o pré-incremento aumenta a variavel antes de tudo o resto, tem prioridade. Ao correr a segunda vez x será 3 1 Witness reacted to this Share this post Link to post Share on other sites