<分区>
这是我的简单代码...
#include<stdio.h>
int main()
{
int i=5;
printf("%d %d %d %d %d ",i++,i--,++i,--i,i);
return 0;
}
在 gcc 上,输出为 '4 5 5 5 5'
但在 TC 上,它给出的输出为“4 5 5 4 5”
据我所知,在 printf 语句中,如果它是单个表达式,则计算将从左到右,但在正常语句中,它将从左到右。
但如果 printf 包含多个表达式,则计算将在堆栈上,元素将从左到右压入堆栈,但从右到左弹出,这证明了 TC 输出
请指正我哪里错了???