编写函数,模拟实现strcpy
需要注意两点:
- 不受限制的字符串函数都是以’\0’为结尾标记来判断的,因此输入参数必须包含‘\0’
- 必须保证目标字符数组的空间足以保存整个源字符串
程序代码如下:
#include <stdio.h>
#include <assert.h>
char *MyStrcpy(char *dest, const char *src)
{
char *ret = dest;
assert(dest != NULL);
assert(src != NULL);
while ((*dest++ = *src++))
{
;
}
return ret;
}
int main()
{
char arr1[7] = "abcdef";
char arr2[20] = {0};
printf("%s\n", MyStrcpy(arr2, arr1));
return 0;
}
程序运行结果如下: