首页 > 编程笔记 > C语言笔记 阅读:9

C语言strcpy()复制字符串函数的用法(附带实例)

C语言中的字符串复制函数 strcpy() 可以将源字符串的内容复制到目标字符数组中。

查看上图,源字符串为 "You\0",目标字符串为 "ILove\0"。字符串复制函数会从首元素开始覆盖目标字符串,使得目标字符串变为 "You\0e\0"。


图 1 字符串复制函数

strcpy() 函数原型如下:
char *strcpy (char * destination, const char * source);

函数最终返回复制后目标字符串的首地址,其实也就是参数 destination 记录目标字符串的首地址。

下面实例展示了使用 strcpy() 函数复制字符串:
#include <stdio.h>
#include <string.h>
int main()
{
    char dest[9] = "ILove";
    char src[4] = "You";

    // 复制前
    printf("%s\n", src);
    printf("%s\n", dest);

    // 复制字符串
    strcpy(dest, src);

    // 复制后
    printf("%s\n", src);
    printf("%s\n", dest);
    return 0;
}
运行结果为:

You
ILove
You
You

复制前,源字符串为 "You\0",目标字符串为 "ILove\0"。复制后,源字符串仍为 "You\0",而目标字符串变为 "You\0e\0"。由于字符串以 '\0' 作为结束标志,因此复制后,目标字符串只输出了 You。

与字符串拼接函数类似,字符串复制函数也要求目标字符串所在的数组具有足够的空间,以便正确完成复制操作。

相关文章