目录
一、了解strcpy函数
从上面的图中,我们了解到,strcpy函数的返回类型是char*类型,函数参数有两个,一个是char*类型,一个是const char*类型的,作用是将第二个字符串的内容拷贝到第一个字符串,包括'\0'。
二、需要注意的问题
-
源字符串必须以'\0'结束。
-
目标空间必须有足够大,能够容纳下源字符串的内容。
-
目标空间必须可变。
三、strcpy函数的模拟实现
#include <stdio.h>
#include <assert.h>
char* my_strcpy(char* str1, const char* str2)
{
assert(str1 && str2);
char* p = str1;
/*while (*str2 != '\0')
{
*str1 = *str2;
str1++;
str2++;
}
*str1 = *str2;*/
while(*str1++=*str2++)
{
;
}
return p;
}
int main()
{
char arr1[] = "abcdef";
char arr2[] = "bde";
char* p = my_strcpy(arr1, arr2);
printf("%s\n", p);
return 0;
}