关于增减值操作有关问题

关于增减值操作问题
#include   <stdio.h>  
#include <conio.h>
int main()
{
int i=2;
i=i++ + ++i;
printf("i=%d",i);
getch();
return 0;
}
为什么我运行的结果是7呢
------解决方案--------------------
请看置顶贴啊关于增减值操作有关问题
------解决方案--------------------
未定义行为!!!!
------解决方案--------------------
#include   <stdio.h>  
 #include <conio.h>
 int main()
 {
 int i=2;
 i=i++ + ++i;  // 2 + 5 = 7;
 printf("i=%d",i);
 getch();
 return 0;
 }


vc++6.0下为7,i++ 和 ++i 的基本说明
i++ 是先取值再自加,++i是先自加再取值 不管是前置++还是后置++ 优先级都高于+