什么是c++字符串拷贝函数
strcpy(s1,s2),是把s2中的字符串拷到s1里面去,那s1里面的元素怎么办?老是和strcat(s1,s2)混淆,怎么理解?菜鸟刚学...
strcpy(s1,s2),是把s2中的字符串拷到s1里面去,那s1里面的元素怎么办?老是和strcat(s1,s2)混淆,怎么理解?菜鸟刚学
展开
3个回答
展开全部
strcpy(s1,s2),是把s2中的字符串拷到s1里面去,那s1里面的元素怎么办?
s1和s2一样了,s1之前的元素不存在了。
s1和s2一样了,s1之前的元素不存在了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
各类型的拷贝构造函数如下所示:
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.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'!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |