64,654
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <stdlib.h>
void getmemory(char **p)
{
*p=(char *) malloc(100);
strcpy(p,"hello world");
}
int main( )
{
char *str=NULL;
getmemory(&str);
printf("%s/n",str);
free(str);
return 0;
}
char *getmemory()
{
char *p=(char *) malloc(100);
strcpy(p,"hello world");
return p;
}
int _tmain(int argc, _TCHAR* argv[])
{
char *str= getmemory() ;
printf("%s/n",str);
free(str);
system("pause");
return 0;
}
#include <stdlib.h>
void getmemory(char **p)
{
*p=(char *) malloc(100);
strcpy(*p,"hello world");
}
int main( )
{
char *str=NULL;
getmemory(&str);
printf("%s/n",str);
free(str);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
void getmemory()
{
char *p=(char *) malloc(100);
strcpy(p,"hello world");
return p;
}
int main( )
{
char *str= getmemory() ;
printf("%s/n",str);
free(str);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void getmemory(char *&p) //注意了;
{
p=(char *) malloc(100);
strcpy(p,"hello world");
}
int main( )
{
char *str=NULL; //此处你将str=null;导致了str和内存断绝了关系;所以下面要引用;
getmemory(str);
printf("%s\n",str);
free(str);
return 0;
}