思路:函数原型strcpy(char *str1, char *str2),将str2赋值给str1,返回str1指针。
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <assert.h>
char* mystrcpy(char *pStr1, char *pStr2)
{
if (pStr1 == NULL || pStr2 == NULL) {
assert(0);
}
while (*pStr2 != '\0') {
*pStr1 = *pStr2;
++pStr1;
++pStr2;
}
*pStr1 = '\0';
return pStr1;
}
int main()
{
char szBuf1[32] = { 0 };
char szBuf2[32] = { 0 };
strcpy(szBuf1, "abcdefghij");
mystrcpy(szBuf2, szBuf1);
printf("szBuf2=[%s]\n", szBuf2);
return 0;
}
程序运行结果如下: