int x=6; printf("%d,%d,%d\n",x,x++,--x); 运行结果是6 5 6 ,能告 ...
发布网友
发布时间:2024-10-08 19:09
我来回答
共1个回答
热心网友
时间:2024-11-20 21:52
和编译器有关系,不同编译器可能出现的结果也不同
我在VC6.0下运行结果为5,5,5
个人认为
取数的过程是一个压栈的过程
就是说它先把x压栈,接着把x++压栈,最后把--x压栈
这样的话x就是栈底了,而取数就变成从最后一个--x开始取
这样第3个%d就是5了
第2个%d是5(x++先用x=5,等语句结束i再自增)
第1个%d是5(先用x=5)