Cita de: YreX-DwX en 3 Octubre 2019, 21:37 PMCada lenguaje tiene su sintaxis y su especificación. Esperar resultados idénticos es pecar de ingenuo (precisamente porque la mayor parte de las veces así sucederá, teniendo ambos lenguajes un origen común).
Ya he visto que es mejor separar los incrementos/decrementos en líneas diferentes
pero quiero terminar de entenderlos. He realizado otra prueba...
Y el resultado es: numeros = {1,2,-3, 4,5}. Por lo que saco (en claro) que...
Sin embargo, en Java si probamos a hacer lo mismo:
El resultado es: numeros = {1,2,3,-3,5}. Por lo que aquí parece que...
Ese "Quiero terminar de entenderlo", me suena a perder el tiempo...
En vez de hacer pruebas, lo que tienes que hacer es consultar la especificación del lenguaje (de uno y otro)... para ver cuál es el orden de precedencia de la asignación. Ya está, 1 minuto de lectura, no varios días haciendo pruebas... si no, aprender se te hará eterno.
Si la especificación del lenguaje es ambigua en tal punto, entonces ten por cierto que cada compilador tiene vía libre para hacer como le dé la gana. Ahí, si procede hacer pruebas para ver como se comporta el compilador que estés usando.