Can anyone explain me the output.
#include<stdio.h>
int main() {
int a[]={10,20,30};
int *p=a;
++*p++;
printf("%d %d %d %d",*p,a[0],a[1],a[2]);
}
output is 20 11 20 30
Postfix incrementation has a higher precedence, so value of second index should have been incremented. Why is the value of first index incremented?