Int* fun()
{
Int a=5;
Int * p=&a;
Return p;
}
请问:在主函数里面调用fun函数,这样可以吗?如果不可以,请说明为什么,并给出一种解决方案。
a是局部变量,a 的作用域在fun内,p指向a的地址,在return的时候,a的生命周期结束了,可以将a定义为全局变量,或者int a的定义加个static;
Int* fun()
{
Int a=5;
Int * p=&a;
Return p;
}
请问:在主函数里面调用fun函数,这样可以吗?如果不可以,请说明为什么,并给出一种解决方案。
a是局部变量,a 的作用域在fun内,p指向a的地址,在return的时候,a的生命周期结束了,可以将a定义为全局变量,或者int a的定义加个static;