为什么
#include <stdio.h>
int main()
{
int i=0;
printf("%d,%d",i++,++i);
return 0;
}
输出是1,2
而
#include <stdio.h>
int main()
{
int i=0;
printf("%d",i++);
return 0;
}
输出是0?
i++是先取值后自增,++i是先自增后取值
printf函数的执行顺序是由右到左的,如:函数printf("%d%d\n",a,b);函数的实际输出顺序是先计算出b,然后在计算a,接着输出a,最后在输出b;