1) *(ptr++) +=123; //虽然加了括号,但是还是先算的 *ptr += 123; 然后计算 ptr+=1;
2) printf("", a, b);// 函数中的是先算b, 后算a;
例如:
<pre name="code" class="cpp">int main()
{
int i = 0;
printf(" %d, %d \n", i, i++);
return 0;
}
其中如果执行顺序是从左向右的话,那么起初应该是先执行i, 然后再执行i++, 由于后置的++,是先进行的打印,后进行加一操作,结果应该是 0, 0
但是其实其中的执行顺序是从右向左进行的,所以开始是 先执行的是i++, 由于也是先进行打印,后进行加一操作,所以第二个数是0, 但是打印完第二个数后,由于i执行了加一操作,
所以第一个值是1, 经过程序验证,结果正是 1, 0;