可能重複:
Could anyone explain these undefined behaviors (i = i++ + ++i , i = i++, etc…)
Undefined Behavior and Sequence Points混亂與節目的輸出
#include<stdio.h>
int main(){
int i=5,j=5,y,x;
int m=++i;
int n=++i;
x=m+n;
y=++j + ++j ;
printf("%d %d ",x,y);
return 0;
}
OUTPUT:13 14 任一項PLZ可以解釋爲什麼 'y' 的值是14而不是13.
你可以做一些調試。 –
@RamyAlZuhouri調試器不太可能會導致有人問這個問題得出它是未定義行爲的結論。 – Flexo
如果是13,你會問爲什麼它是13而不是14? –