I am getting some strange behavior from VS. I printf using the same line of code in MAIN() and get difference answers?
void aligator(int **p) {
int pet[6] = { 10, 20, 30, 40, 50, 60 };
*p = pet;
printf("pet[2]:%d\n", pet[2]);
printf("p[2]:%d\n", *((*p) + 2));
}
int main()
{
int *pa;
aligator(&pa);
printf("_pa[2]:%d\n", *(pa + 2));
printf("_pa[2]:%d\n", *(pa + 2));
printf("_pa[2]:%d\n", *(pa + 2));
printf("_pa[2]:%d\n", *(pa + 2));
}
RUN THE PROGRAM:
pet[2]:30
p[2]:30
*pa[2]:30 //
*pa[2]:0 // why?
*pa[2]:0 //
*pa[2]:0 //