I was manipulating some pointers in a c code and I found something that I couldn't understand.
int main(){
int tab[]={4,6,8,9,20};
printf("%p %p",tab,&tab);
return 0;
}
I've tried to print the variable tab and its address knowing that tab holds the address of the first element in the array and the address of tab itself would be a random address value but for whatever reason the program output the same value and I found this really odd so ill be grateful if someone could explain the reason to me.