k++; ++k;

juan esteban ospina
01 de Julio del 2004
Hola, saludos a todos.

Hay alguna diferencia entre



k++; ++k;


Gracias y suerte.

neo20
01 de Julio del 2004
Hola Juan , sí que hay diferencia , pero es normal ke te lo preguntes.

Te lo explico con un ejemplo :
tenemos un array de enteros por ejemplo
int vector[20];

si hacemos: var=vector[k++]; estamos accediendo a la posicion k del vector y luego incrementamos k.
Pero si ponemos : var=vector[++k]; incrementamos k y luego accedemos a la posicion del vector nueva , ke será en este caso k+1.

En resumen:
k++ -> evaluamos primero y luego incrementamos.
++k -> incrementamos primero y luego evaluamos.

Espero que te haya kedado claro.
Suerte.

Deimos
01 de Julio del 2004
Las dos expresiones son equivalentes respecto del valor final de la variable... pero de todas maneras podrían no serlo en cuanto a las variables en el contexto de expresion, es decir como interactúan con otras variables dentro de una expresión.
Por ejemplo:

int a,b;
a=10;

//CASO 1
b=a++; //b=10 y a=11

//CASO 2
b=++a; //b=11 y a=11

Como podrás observar en el primer caso el compilador asigna a 'b' el valor de 'a' y luego le suma uno a 'a'. Pero en el segundo caso el compilador encuentra los "++" entonces se los agrega a la variable 'a' y a ese resultado se lo pone en 'b'