前言:
strcpy系统定制开发函数的作用是把含有转义字符\0系统定制开发即空字符作为结束符,然后把src该复制到dest,系统定制开发且返回值的类型为“char*”;strcpy是“string copy”(系统定制开发字符串复制)的缩写。
char *strcpy(char *dest, const char *src) 把 src 所指向的字符串复制到 dest。
需要注意的是如果目标数组 dest 不够大,而源字符串的长度又太长,可能会造成缓冲溢出的情况。
声明
下面是 strcpy() 函数的声明。
char *strcpy(char *dest, const char *src)
参数
- dest -- 指向用于存储复制内容的目标数组。
- src -- 要复制的字符串。
返回值
该函数返回一个指向最终的目标字符串 dest 的指针。
实例
下面的实例演示了 strcpy() 函数的用法。
- #include <stdio.h>
- #include <string.h>
-
- int main(void){
-
- char dest[6] = "Hello";
- char src[20] = "World\0Hi";
-
- strcpy(dest, src);
-
- printf("将src的字符串赋值到dest:%s\",dest);
-
- return 0;
- }
打印结果:
代码分析:
1、在设置字符数组长度的时候根据字符数计算,如果字符数的长度大于字符数组的长度则编译不能通过。
2、运行后的src的字符数大于dest的字符数,虽然编译可以通过,但在运行的时候会导致缓冲区溢出的问题。
3、src字符串赋值给dest时,遇到转义字符\0即空字符后面便不再继续输出。如果转义字符在开始定义的时候设置给dest后面也是一样不再继续输出
4、关于strcpy()函数复制这一说并不严谨,个人理解可以将其看作是覆盖(overwrite)
以上就是strcpy()函数使用方式以及说明