strcpy与strdup
linux下的c是ansi c,strdup不是标准库函数.
strdup可以直接把要复制的内容复制给没有初始化的指针,因为它会自动分配空间给目的指针,strdup用完要free否则,内存泄露.
strcpy的目的指针一定是已经分配内存的指针.
strdup
原型:extern char *strdup(char *s);
用法:#include <string.h>
功能:复制字符串s
说明:返回指向被复制的字符串的指针,所需空间由malloc()分配且可以由free()释放。
举例:
// strdup.c
#include <syslib.h>
#include <string.h>
main()
{
char *s="Golden Global View";
char *d;
clrscr();
d=strdup(s);
printf("%s",d);
getchar();
return 0;
}
strcpy
原型:extern char *strcpy(char *dest,char *src);
用法:#include <string.h>
功能:把src所指由NULL结束的字符串复制到dest所指的数组中。
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest的指针。
举例:
// strcpy.c
#include <syslib.h>
#include <string.h>
main()
{
char *s="Golden Global View";
char d[20];
clrscr();
strcpy(d,s);
printf("%s",d);
getchar();
return 0;
}
strcpy与strdup相关推荐
- C语言 -- string.h中函数功能详解与手动实现 - 02(常用函数memcpy、memmove、strcpy、strdup、strcat、strtok...)
内容预览 3.5.搬迁类型 --- 函数功能详细说明 :将内存空间中内容移动.复制到另一内存空间 3.6.搬迁类型 --- 函数功能测试与手动实现 3.6.1.memcpy.memccpy 3.6.2 ...
- linux C函数之strdup函数分析【转】
本文转载自:http://blog.csdn.net/tigerjibo/article/details/12784823 linux C函数之strdup函数分析 一.函数分析 1.函数原型: [c ...
- C语言:strdup函数的使用
一.函数分析 1.函数原型: #include <string.h> char *strdup(const char *s); 2.功能: strdup()函数主要是拷贝字符串s的一个副本 ...
- c语言strdup函数_在C / C ++中使用strdup()函数的指南
c语言strdup函数 In this article, we'll take a look at using the strdup() function in C/C++. 在本文中,我们将研究在C ...
- linux C函数之strdup函数分析
本文转载自:http://blog.csdn.net/tigerjibo/article/details/12784823 linux C函数之strdup函数分析 一.函数分析 1.函数原型: #i ...
- C语言 字符串相关的函数
字符串相关的函数 bcmp bcopy bzero memccpy memchr memcmp memcpy memicmp memmove memset movmem setmem stpcpy s ...
- strdup与strcpy
strdup与strcpy具体的区别,以及在不同操作系统下的使用. strdup 原型: extern char *strdup(char *s); 用法:#include <string.h& ...
- c语言strdup,C语言中的strdup()函数和其与strcpy()函数的区别
头文件: #include 定义函数: char * strdup(const char *s); 函数说明:strdup()会先用maolloc()配置与参数s 字符串相同的空间大小,然后将参数s ...
- strdup和strcpy比较
strdup和strcpy都是字符串复制函数,但是也是有区别的,具体如下: 1.strdup不是标准的c函数:strcpy是标准的c函数. 2.strdup的参数是一个,即源字符串地址,返回值是目标字 ...
最新文章
- 黯然微信小程序杂记(一):从服务器获取数据 后端语言php
- Python编程基础:第三十一节 文件读取Read a File
- http Error 503 server unavailable
- 工厂方法源码解析(jdk+logback)
- 我的runtime学习笔记
- Chrome调试模式获取App混合应用H5界面元素
- Cracer8-模块和正则表达式
- Python学习笔记之元组
- linux判断redis是否启动成功_redis的前生后世
- 开启线程的几种方式、实现 Runnable 接口、实现 Runnable 接口、继承 Thread 类、FutureTask 配合 Thread
- JAVA基础语法 - 继承
- 自己处理域名、主机备案流程 + 公网安备流程,总共耗时半个月左右
- 人生的智慧——叔本华
- 再次领先全国,第一只波士顿机器狗落户上海,等你来撸
- 给hotmail邮箱发信(status=deferred)解决办法
- 天下武功,唯创不破:Atlassian产品中文版蓄力以待
- linux websphere 端口号,Linux环境下配置websphere7.0的一些命令
- TIA西门子博途V17安装教程及注意事项
- 图片怎么格式转换成jpg?介绍几种思路
- java的字典序排序_java实现字典序排序