如题:按我的理解是等于5的,请教下为何c语言中答案是4
java:
int i =2;
int temp;
temp = (i++) + (i++);
System.out.println(temp);
c语言
int i =2;
int temp;
temp = (i++) + (i++);
printf("%d",temp);
如题:按我的理解是等于5的,请教下为何c语言中答案是4
java:
int i =2;
int temp;
temp = (i++) + (i++);
System.out.println(temp);
c语言
int i =2;
int temp;
temp = (i++) + (i++);
printf("%d",temp);
如果你多试几个编译器就知道,这个结果除了4 5还可以是别的。因为这个叫做未定义行为。
http://www.it610.com/article/1508275.htm
讨论这种问题是愚蠢的。