I was revisiting pointers when I had this doubt.
int *ptr;
int arr[5] = {10,20,30,40,50};
ptr = &arr[0];
Now printf(\"Value: %d\"
The trick to this is that whenever both are unary operators, then associativity is from right to left.
*ptr++ --> first increment pointer to next location and then dereference the value at that location.
Similarly *++ptr -->first increment pointer and then dereference.
++*ptr --> first dereference value at ptr and then increment the value.