#include<stdio.h> void main() { int n=1; printf("%d,%d,%d",n,++...

发布网友 发布时间:2024-10-23 19:09

我来回答

2个回答

热心网友 时间:2024-11-09 23:54

我在我的编译环境中测试,结果是1,1,1。
因为在一些编译环境中,printf的执行执行顺序是颠倒的,即从右向左执行。
printf("%d,%d,%d",n,++n,n--);
所以n--先执行,此时n的值为0。因为后缀的自减操作是有“延迟的”,所以输出为1
++n第二个执行,自增操作立即生效,输出为1
n第三个执行,输出为1
所以输出为1,1,1

你可以在自己的环境中实验一下,输出结果可能会不同。

热心网友 时间:2024-11-09 23:48

输出:1,1,0

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com