strcpy
#include <stdio.h>
#include <assert.h>
#include <string.h>
/*
C语言标准库函数strcpy,把从src地址开始且含有'\0'结束符的字符串复制到以dest开始的地址空间。
1 保护源字符串 用const
2 空指针的检查
3 返回 char * , 返回dst的原始值,实现链式表达式
*/
char *mystrcpy(char *dst , const char *src)
{
assert(dst != NULL && src != NULL);
char *r = dst;
while( (*dst ++ = *src ++) != '\0');
return r;
}
int main()
{
char a[] = "12345";
char b[] = "aac";
//strcpy(b,a); // 错误,目标串长度小于源字符串长度
int len = strlen(mystrcpy(a, b));
printf("%d\n", len);
printf("%s\n", a);
printf("%s\n", b);
return 0;
}