请问:该函数存在哪些问题?
函数如下
void f()
{
char *a;
a=(char*)malloc(5); // malloc 后需要判断 if (a == 0) , 因为申请未必成功
strcpy(a,"abc");
a="cde"; //a 被赋于其他值,再free(a)出错,a已经不再指向堆内存
free(a); //free失败,内存泄露
}
函数如下
void f()
{
char *a;
a=(char*)malloc(5); // malloc 后需要判断 if (a == 0) , 因为申请未必成功
strcpy(a,"abc");
a="cde"; //a 被赋于其他值,再free(a)出错,a已经不再指向堆内存
free(a); //free失败,内存泄露
}
回复Comments
{commenttime}{commentauthor}
{CommentUrl}
{commentcontent}