int main()
{
int a[] = {1,2,3,4,5};
int *ptr = a;
printf("%d,%d\n", *ptr,*(++ptr));
return 0;
}
经典的指针结合运算的题目:这里涉及到指针的指向操作和printf函数的计算顺序:从右到左的压栈顺序,然后从左到右出栈顺序。
*(++ptr)先入栈 指向2,*ptr 也指向2;同理交换*ptr 和*(++ptr)位置 ,*ptr先入栈,*ptr指向1,*(++ptr)指向prt+1 2。
代码部分:
int main()
{
int a[] = {1,2,3,4,5};
int *ptr = a;
printf("%d,%d\n", *ptr,*(++ptr));
return 0;
}
例题2: