#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
char* my_strdup(char *str)
{
char* ret = (char *)malloc(strlen(str) + 1);
if (NULL == ret)
{
return NULL;
}
else
{
return strcpy(ret, str);
}
}
int main()
{
char str[] = "abcdefg";
char* strTemp = NULL;
strTemp = my_strdup(str);
printf("strTemp = %s\n", strTemp);
free(strTemp);
return 0;
}
运行结果:
分析:
strudp函数的功能是实现字符串的赋值,特点是在函数内部是使用malloc申请空间
使用后要记得free掉指针释放出空间。