原型:char *strcpy(char* dest, const char *src);
功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的
地址空间
注意:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
程序实现
#include <stdio.h>
#define MAX_SIZE 1024
char * my_strcpy(char * str,char * src) //自定义strcpy函数
{
char* flag = str; //将str开始地址赋给指针变量flag
while(*src != '\0')
{
*flag = *src; //将字符串src复制到falg开始的地址空间中
flag++;
src++;
}
*flag = '\0'; //复制结束后在字符串最后加上'/0'
return str; //返回str首地址
}
int main()
{
char str[MAX_SIZE]={0};
char src[MAX_SIZE]={0};
printf("please intput a string(src):\n");
scanf("%s",src);
getchar();
</pre><pre code_snippet_id="1891303" snippet_file_name="blog_20160921_3_4586852" name="code" class="html">printf("please intput a string(str):\n");
scanf("%s",str);
char *temp = my_strcpy(str,src);
printf("temp = %s\n ",temp);
printf("str = %s\n",str);
return 0;
}
输出结果: