int *intAddr(){
int i = 16;
return &i;
}
char *charAddr(){
char A = 'a';
return &A;
}
然后我测试这两个功能
int *intaddr = intAddr();printf("%d\n", *intaddr);
char *charaddr = charAddr();printf(charaddr);
但结果是只有16个不是'a'。当函数 intAddr() 结束时,变量i
被销毁。为什么*intaddr
能得到16?