前言:
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\n",dest);
return 0;
}
打印结果:
代码分析:
1、在设置字符数组长度的时候根据字符数计算,如果字符数的长度大于字符数组的长度则编译不能通过。
2、运行后的src的字符数大于dest的字符数,虽然编译可以通过,但在运行的时候会导致缓冲区溢出的问题。
3、src字符串赋值给dest时,遇到**转义字符\0即空字符**后面便不再继续输出。如果转义字符在开始定义的时候设置给dest后面也是一样不再继续输出
4、关于strcpy()函数复制这一说并不严谨,个人理解可以将其看作是覆盖(overwrite)
以上就是strcpy()函数使用方式以及说明
完
版权归原作者 BlizCp 所有, 如有侵权,请联系我们删除。