有关一个printf函数的输出有关问题

有关一个printf函数的输出问题
#include<stdio.h>
int main()
{
int i=10;
printf("%d ,%d ,%d ",i,i++,++i);
  /*printf("%d ",i);
printf("%d ",i++);
printf("%d ",++i);*/
return 0;
}

为什么输出的都是11,和/* ...*/的输出形式有什么区别?

------解决方案--------------------
这个是未定义的

由编译器决定结果

不要写这样的代码


------解决方案--------------------
http://topic.csdn.net/u/20110826/09/601ebe9c-c2ae-4d63-a4e2-506c618bb654.html