3. He probado el siguiente código en varios compiladores.
int i = 3;
i
= i++;
En unos obtuve para i el valor 3, en otros 4, pero en uno dio
7. ¿Sé que el comportamiento es indefinido, pero
cómo podría dar 7?
El
comportamiento indefinido significa que todo puede pasar.
Ten
en cuenta que ni i++ ni ++i es lo mismo que i+1. Si quieres incrementar
i, utiliza i=i+1 o i++ o ++i, pero no los combines.