字符串操作函数是我们比较常用的字符串操作函数,下面我们来手动实现。
在这里笔者要强调的是,目标字符串的大小必须能够容纳源字符串的大小。否则就会出现访问越界
意思是str1的堆栈出错,因为str1访问越界。
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
char *strcpy(char *strDest, const char *strSrc)
{
assert((strDest != NULL) && (strSrc != NULL));
char *address = strDest;
while ((*strDest++ = *strSrc++) != '\0')
NULL;
return address;
}
int main()
{
char str1[] = "kjh12";
char str2[] = "aslk";
strcpy(str1, str2);
puts(str1);
system("pause");
return 0;
}