#include<iostream>
using namespace std;
int fun();
void main()
{
int a=fun();
cout<<"the value of a is :"<<a;
}
int fun()
{
int *p=new int (5);
return *p;
}
//不知道程序错在哪里?
有哪位能说一下在使用指针时应避免什么样的问题.......谢谢
楼主的程序存在内存泄漏问题,在fun函数中分配的内存,应该在数据使用完毕后,程序结束前释放。
#include<iostream>
using namespace std;
int* fun();
void main()
{
int* a=fun();
cout<<"the value of a is :"<< *a;
delete a;
a = NULL;
}
int* fun()
{
int *p=new int (5);
return p;
}