免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3259 | 回复: 10
打印 上一主题 下一主题

[C] strcpy strdup 区别? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-07-19 11:16 |只看该作者 |倒序浏览
如题
除了strdup 会自动用malloc ,手动free外,还有什么区别?

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2010-07-19 11:18 |只看该作者
区别都以楼主的话为基础,还能说出啥区别

论坛徽章:
0
3 [报告]
发表于 2010-07-19 11:29 |只看该作者
区别都以楼主的话为基础,还能说出啥区别
群雄逐鹿中原 发表于 2010-07-19 11:18



   

论坛徽章:
324
射手座
日期:2013-08-23 12:04:38射手座
日期:2013-08-23 16:18:12未羊
日期:2013-08-30 14:33:15水瓶座
日期:2013-09-02 16:44:31摩羯座
日期:2013-09-25 09:33:52双子座
日期:2013-09-26 12:21:10金牛座
日期:2013-10-14 09:08:49申猴
日期:2013-10-16 13:09:43子鼠
日期:2013-10-17 23:23:19射手座
日期:2013-10-18 13:00:27金牛座
日期:2013-10-18 15:47:57午马
日期:2013-10-18 21:43:38
4 [报告]
发表于 2010-07-19 11:31 |只看该作者
帮助里面说得很清楚了

论坛徽章:
2
技术图书徽章
日期:2013-09-04 15:21:51酉鸡
日期:2013-11-01 21:20:20
5 [报告]
发表于 2010-07-19 16:10 |只看该作者
参数不同,

论坛徽章:
0
6 [报告]
发表于 2010-07-19 16:32 |只看该作者
楼主基本把区别说完了

论坛徽章:
0
7 [报告]
发表于 2010-07-19 22:27 |只看该作者
参考一楼即可。

论坛徽章:
0
8 [报告]
发表于 2010-07-20 00:10 |只看该作者
本帖最后由 langue 于 2010-07-20 00:11 编辑

总的说来,copy在这里是照抄的意思,duplicate是生成一份复制品。

DESCRIPTION
       The  strcpy()  function  copies the string pointed to by src (including
       the terminating '\0' character) to the array pointed to by  dest.   The
       strings  may not overlap, and the destination string dest must be large
       enough to receive the copy. [1]

       The  strdup()  function  returns  a  pointer to a new string which is a
       duplicate of the string s.  Memory for the new string is obtained  with
       malloc(3), and can be freed with free(3). [2]


From WordNet (r) 2.0 :

  copy
       v 1: copy down as is; "The students were made to copy the
            alphabet over and over" [3]

  duplicate
       v. 3: make a duplicate or duplicates of; "Could you please
          duplicate this letter for me?" [3]

  duplicate
       n 1: something additional of the same kind; "he always carried
            extras in case of an emergency" [syn: extra]
       2: a copy that corresponds to an original exactly; "he made a
          duplicate for the files" [syn: duplication] [3]


Reference:
[1] strcpy(3)
[2] strdup(3)
[3] http://www.dict.org/bin/Dict

论坛徽章:
0
9 [报告]
发表于 2010-07-20 08:36 |只看该作者
用途不同吧

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
10 [报告]
发表于 2010-07-20 14:20 |只看该作者
如题
除了strdup 会自动用malloc ,手动free外,还有什么区别?
allmycheers 发表于 2010-07-19 11:16



    strcpy在已知的空间,strdup在未知的空间。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP