1:i++;(来自http://www.cnblogs.com/slave_wc/archive/2011/03/21/1990730.html)

 What will be the output of the following C code ?

#include <stdio.h>

int main() {
int b = 3;
int arr[] = {6, 7, 8, 9, 10};
int *ptr = arr;
*(ptr++) += 123;
printf(
"%d, %d\n", *ptr, *(++ptr));
}

/*修改中,C语言对函数参数压栈顺序未做规定,具体与编译环境相关。

 且压栈顺序与求值顺序之间无必然联系。(保留)

   存在争议,这里建议避免使用(不要在参数列表中使用i++之类的语句,总之,不算是一个好习惯吧。)*/

1:C中printf计算参数时从右往左压栈的,故为8 8

相关知识点:(a)副作用与序列点  (b)压栈顺序与求值顺序