#include<stdio.h>
int x=0;
int main(){
int y=0;
printf("%d %d %d %d\n",x+1,x++,x+1,x);
printf("%d %d %d %d\n",y+1,y++,y+1,y);
return 0;
}
用gcc編譯,以上會輸出
2 0 1 0
2 0 1 1
(^這個)
我知道是從右至左執行,
但是x和y為什麼最後一個輸出會不一樣呢?
--
int x=0;
int main(){
int y=0;
printf("%d %d %d %d\n",x+1,x++,x+1,x);
printf("%d %d %d %d\n",y+1,y++,y+1,y);
return 0;
}
用gcc編譯,以上會輸出
2 0 1 0
2 0 1 1
(^這個)
我知道是從右至左執行,
但是x和y為什麼最後一個輸出會不一樣呢?
--
All Comments