when running the following code, why do I get two different memory addresses?
Code:#include <stdio.h>
int main(void){
int short signed number=-3;
int short signed *pointer=&number;
printf("the value of number is %d",number);
printf("\n it's address in memory is %p",pointer);
printf("\n it's address in memory is %d",pointer);
return 0;
}