posibles duplicados:
printf(“%d %d %d\n”,++a, a++,a) output problem
Parameter evaluation order before a function calling in Cprintf y ++ operador
#include<stdio.h>
main()
{
int a=10;
printf("\n %d %d", a, a++); //11 10
a=10;
printf("\n %d %d", a++, a); //10 11
a=10;
printf("\n %d %d %d ", a, a++,++a); //12 11 12
}
después de ejecutar este me dio la salida dada en los comentarios. por lo que sé, la primera salida se espera porque la ejecución de printf va de derecha a izquierda pero no pudo entender el segundo y el tercero
duplicado: http://stackoverflow.com/questions/1270370/printfd-ddnaaa-output-problem – Vladimir
+1 para una buena pregunta .. No sabía que funcionó de esa manera – Earlz
El cálculo de los argumentos para * printf * no es parte de la ejecución de * printf *. Todos los argumentos deben calcularse antes de que * printf * comience a ejecutarse. –