char* strcpy(char *strDest,const char *strSrc)
{
assert((strDest!=NULL)&&(strSrc!=NULL));
if(strDest==strSrc)
return strDest;
char *address=strDest;
while((*strDest++=*strSrc++)!='\0')
;
return address;
}
//例如
#include<stdio.h>
#include<string.h>
int main()
{
char s[]="123456789";
char d[]="123";
strcpy(d,s);
printf("%d\n%d\n",d,s);
return 0;
}
//程序输出结果:
//123456789
//56789
strcpy的功能是将“源字符串”s复制到“目的字符串”的,直至遇到“源字符串”的结束标识符’\0’。在没有’\0’结尾的字符串执行strcpy语句时,会使从s内存复制到d内存的字节数具有不确定性。
注意:strlen的结果不统计’\0’所占的一个字节