首页 > 代码库 > C语言strdup函数
C语言strdup函数
1 static RD_INLINE RD_UNUSED char *rd_strdup(const char *s) {2 #ifndef _MSC_VER3 char *n = strdup(s);4 #else5 char *n = _strdup(s);6 #endif7 assert(n);8 return n;9 }
1 test_topics_sh = rd_strdup(val);
strdup()函数是c语言中常用的一种字符串拷贝库函数,一般和free()函数成对出现。
- 外文名
- strdup
- 头文件
- string.h
- 功 能
- 将串拷贝到新建的位置处
- 属 性
- 字符串拷贝库函数
原型:
extern char *strdup(char *s);
头文件:string.h
说明:
功 能: 将串拷贝到新建的位置处
strdup()在内部调用了malloc()为变量分配内存,不需要使用返回的字符串时,需要用free()释放相应的内存空间,否则会造成内存泄漏。
返回值:
返回一个指针,指向为复制字符串分配的空间;如果分配空间失败,则返回NULL值。
Example:
①.// strdup.c
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <malloc.h>
int main()
{
char *s="Golden Global View";
char *d;
clrscr();
d=strdup(s);
if(NULL != d) {
printf("%s\n",d);
free(d);
}
getchar();
return 0;
}
运行结果:
Golden Global View
②.Example:
CString sPath="d:\\1.jpg";
LPTSTR str = strdup( sPath );
C语言strdup函数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。