?
int *p[3]; indicates declaring a pointer array, p is the array name
={1,2,3}; indicates p[0], p[1 ], p[2] are assigned values ??of 1, 2, 3 respectively
So *p[i] is not used when printing the output later, and the output is 1,2,3
If it is *p[i], then the output is the value pointed to by the p[i] pointer