您的位置:首页 > 其它

琐记2: ++i 的打印顺序问题

2017-08-03 20:59 225 查看
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。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: