跨函数使用静态变量的问题
# include <stdio.h>void f(int ** p)
{
int i = 5;
*p = &i;
}
int main()
{
int * q;
f(&q);
printf("%d\n", *q);
return 0;
}
-----------
为什么还可以读取到数据,f函数使用完后不是释放掉i的内存了么?
2015-02-06 17:59
2015-02-06 18:15
2015-02-06 18:19
2015-02-06 18:20
2015-02-06 18:30
程序代码:# include <stdio.h>
void f(int ** p)
{
int i = 5;
*p = &i;
}
void bb()
{
int a[10]={0};
}
int main()
{
int * q;
f(&q);
bb();
printf("%d\n", *q);
return 0;
}
2015-02-06 19:18
2015-02-06 19:43
2015-02-06 19:51
2015-02-06 19:57
2015-02-06 21:18