什么是c++字符串拷贝函数

strcpy(s1,s2),是把s2中的字符串拷到s1里面去,那s1里面的元素怎么办?老是和strcat(s1,s2)混淆,怎么理解?菜鸟刚学... strcpy(s1,s2),是把s2中的字符串拷到s1里面去,那s1里面的元素怎么办?老是和strcat(s1,s2)混淆,怎么理解?菜鸟刚学 展开
 我来答
lidong_xy
2008-10-20 · 超过28用户采纳过TA的回答
知道答主
回答量:133
采纳率:0%
帮助的人:89万
展开全部
strcpy(s1,s2)是值copy函数 将s2的值给s1,s1以前的值将消失,取代的是s2的值 前提是 s1的长度必须大于等于s2的长度 否则 失败
strcat(s1,s2)连接字符串 将s2的值连在s1的 后面
即如果 s1 = “aaa” s2 = ”b“ strcat(s1,s2)
s1 = ”aaab“ s2 = ”b” 前提是s1 的长度大于 s1的字符长度+ s2 的字符长度
伊·梵beec
2008-10-20 · TA获得超过2161个赞
知道大有可为答主
回答量:1897
采纳率:0%
帮助的人:1384万
展开全部
strcpy(s1,s2),是把s2中的字符串拷到s1里面去,那s1里面的元素怎么办?

s1和s2一样了,s1之前的元素不存在了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小杰知音
2015-09-27 · TA获得超过2.5万个赞
知道大有可为答主
回答量:1.1万
采纳率:90%
帮助的人:1363万
展开全部
各类型的拷贝构造函数如下所示:
1.void bcopy(const void *src, void *dest, size_t n);
  功能: 拷贝n字节内容从src到dest
  说明: 该函数在内存重叠情况下仍然正常,该函数建议不再使用,而是用memcpy代替
  返回值: 无
  2. void *memcpy(void *dest, const void *src, size_t n);
  功能: 拷贝n字节内容从src到dest
  说明: src和dest在内存中不可重叠,如果重叠请使用memmove代替
  返回值: 返回 dest 地址
  3. void *memmove(void *dest, const void *src, size_t n);
  功能: 拷贝n字节内容从src到dest
  说明: src和dest在内存中可以重叠,但是效率比memcpy略低!
  返回值: 返回 dest 地址
  4. void *memccpy(void *dest, const void *src, int c, size_t n);
  功能: 拷贝n字节内容从src到dest,但是如果碰到c字符则停止拷贝.
  返回值: 返回NULL或者字符c的下一地址
  5. char *stpcpy(char *dest, const char *src);
  功能: 拷贝src到dest
  说明: 该函数不在ANSI和POSIX标准之内;vc6.0不支持
  返回值: 返回 dest + strlen(src)的地址
  6. char *strcpy(char *dest, const char *src);
  功能: 拷贝src到dest
  说明: 该函数可能溢出;源串和目的串的内存区域不能交叠,否则发生错误!
  返回值: 返回 dest 的地址

  7. char *strncpy(char *dest, const char *src, size_t n);
  功能: 从src最多拷贝n个字节到dest.
  说明:(1).如果src的长度小于n,那么将会连同'\0'拷贝到dest,否则dest将不会以'\0'结束(这时记得手动加'\0')!
  (2)源串和目的串的内存区域不能交叠,否则发生错误!
  (3)n最好不要超过src和dest的长度,dest内n字节的内容将会被赋值,src结束后的部分全部将全部置'\0'!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式