C编程中的strcpy()
时间:2020-02-23 14:32:06 来源:igfitidea点击:
我们之前在" C语言中的字符串"教程中了解了C编程中的字符串。
今天,我们将重点介绍C编程中的strcpy()。
C编程中的strcpy()函数
strcpy()函数将一个字符串的内容复制到另一个字符串中。
应该将目标的基地址和源(或者源字符串)提供给此函数,以便将源字符串复制到目标字符串中。
让我们看一下语法,
strcpy(char * target,const char * source);
strcpy()继续将字符从源字符串复制到目标字符串,直到遇到Null字符(\ 0)。
由于字符串是以逐字符方式复制的。
请记住,目标字符串应具有可以容纳复制的字符串的维。
如何在C中使用strcpy()函数
下面给出的示例说明了C中strcpy()函数的用法,
#include<stdio.h>
#include<string.h>
int main()
{
char target[30],source[30];
printf("Enter the source string to be copied:");
fgets(source,30,stdin);
printf("\n\nsource---->target\n\n");
strcpy(target,source);
printf("The target after copying is:%s",target);
return 0;
}
在上面的代码中,我们首先声明两个目标字符串和源字符串。
之后,将使用用户输入的源字符串。
在这种情况下,这是" theitroad strcpy()示例"。当我们有了源字符串时,我们使用了string.h头文件中的
strcpy()函数。
该函数将源字符串的内容复制到目标字符串中。
请注意,源字符串也可以直接传递给strcpy()函数。
但是对于目标字符串,我们总是需要指定指向它的指针。
制作自己的字符串复制函数
让我们尝试创建自己的字符串复制函数,以更好地理解strcpy()函数的工作方式。
#include<stdio.h>
char *My_strcpy(char *t, const char *s) //My_strcpy() definition
{
char *temp;
temp=t;
while(*s!='{代码}') //character-by-charaacter copying
{
*t=*s;
s++;
t++;
}
*t='{代码}'; //string termination
return temp;
}
int main()
{
char target[30],source[30];
printf("Enter the source string to be copied:");
fgets(source,30,stdin);
printf("\n\nsource---->target\n\n");
My_strcpy(target,source);
printf("The target after copying is:%s",target);
return 0;
}
上面我们在main()函数之前声明并定义My_strcpy()函数。
在main()内部,我们使用它代替预定义的strcpy()函数来获得上述输出。
在定义我们将指针** s初始化为常量的My_strcpy()函数时,您是否注意到了?这样做是为了确保该函数无论如何都不会改变源字符串的内容。
这就是函数strcpy()在C编程中的工作方式。

