1、 在printf中,是从右至左打印,++操作的打印优先级最低
{
int i = 10;
printf ("%d %d %d\n", i, i++, ++i); //12 11 12
i = 10;
printf ("%d %d %d\n", i, ++i, i++); //12 12 10
return 0;
}
这样的2个打印操作,出来的结果分别为:12 11 12 与 12 12 10 ;
第一次打印:先计算++i,结果为11,不执行打印操作。接着执行i++,打印出的第二个数为11,打印完执行++操作,结果为12。
然后打印出i为12,最后打印++i的结果为最后的结果12。
第二次打印:先执行i++,即打印出i 为10,然后执行++操作,此时i的值为11。接着执行++i,i的值变为12,但不执行打印操作。
然后执行打印i(即12)的操作,最后执行打印++i,为12。