Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: Zodiak98 en 31 Marzo 2013, 16:56 PM

Título: ¿Pregunta de C++, Ciclo FOR?
Publicado por: Zodiak98 en 31 Marzo 2013, 16:56 PM
Tengo una duda sobre el ciclo for, cual es la diferencia de hacer un incremento en el ciclo asi:
for (x=0;x<5;x++)
y otro asi:
for (x=0;x<5;++x)

Ya se que el primero es prefijo primero usa la variable y luego le suma 1, y el segundo es sufijo que es lo contrario de prefijo primero le suma uno a la variable y luego la utiliza.

O es que el primero ve cuanto vale la variable, luego mira la condicion, si la condicion es verdadera la ejecuta y luego es que incrementa la variable y no hay diferencia en hacerlo asi "x++" y asi "++x".

:huh:
Título: Re: ¿Pregunta de C++, Ciclo FOR?
Publicado por: siberwolf en 31 Marzo 2013, 18:05 PM
no hay diferencia en esa sentencia ya que la controla el while atras.... si fuese en una sentencia asi x += ++i primero incrementa "i" y luego suma "i+1" a "x" ....  x += i++ primero suma "i a x", luego incrementa en +1 "i"....entiendes??xD sino te explico con numeritos   x=2:i=3      1) 2+=++3 primero suma 1+3 = 4 y lo suma al 2 =6
                                       x termina saliendo 6 y i con 2
                                   2) 2+=3++ primero suma 3+2 =5 y despues aumenta 3+1
                                       x sale con 5 y i con 4
me explico...cualquier cosa preguntame (y yo que deje programacion en el segundo cuatrimestre T.T por culpa de las materias del cole d mier... ¬¬)
Título: Re: ¿Pregunta de C++, Ciclo FOR?
Publicado por: 85 en 31 Marzo 2013, 18:34 PM
Operadores de PRE-Incremento y POST-Incremento.

La diferencia es que en el PRE-Incremento primero se incrementa y luego se opera, son dos pasos.

En el POST-Incremento primero se opera y luego se incrementa.

Es según la comodidad o tus necesidades, para con el objeto en cuestión, que puede ser una variable, un puntero, y básicamente esos.
Título: Re: ¿Pregunta de C++, Ciclo FOR?
Publicado por: zonahurbana en 1 Abril 2013, 17:03 PM
Es cierto todo lo que te comentan.

En este caso no hay diferencia alguna, porque el for tiene más o menos esta aproximación:
Código (cpp) [Seleccionar]
for (x=0;x<5;++x){/* Instrucciones */}
Código (cpp) [Seleccionar]
int x=0;
while(x<5)
  {/* Instrucciones */
    ++x;
  }


Y como puedes ver, ++x o bien x++ se encontraría de manera independiente, por lo que, como no interactua con alguna otra expresión, no hay diferencia.