#include "stdio.h "
#include "malloc.h "
char * get()
{
char *p=(char *)malloc(sizeof("hello"));
//p= "hello";
//memcpy(p, "hello", 6);
strcpy(p, "HELLO");
return p;
}
void main (void)
{
char * str=NULL;
str=get();
printf(str);
if(str != NULL)
{
free(str);
str = NULL;
}
}
p= "hello"; 是不对的.这样的话.就把p指向"hello"的首地址.刚刚申请的内存也丢了.