int main(){
int a[3]={1,10,20};
int *p=a;
printf("%d %d " ,*++p,*p);
return 0;
}
Вывод кода выше на компиляторе gcc равен 10 1.
Я понимаю, что * ++ p увеличивает p и разыменовывает новое значение. Но так как p был увеличен, почему * p возвращает 1 вместо 10?