#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void my_strcpy(char* dst, char* src)
{
int i;
for (i = 0; *(src + i) != '\0'; i++)
{
*(dst + i) = *(src + i);//dst[i] = src[i];
}
//补结束符
//dst[i] = 0;
*(dst + i) = 0;
}
void my_strcpy2(char* dst, char* src)
{
while (*src != 0)
{
*dst++ = *src++;
//dst++;
//src++;
}
*dst = 0;
}
void my_strcpy3(char* dst, char* src)
{
while (*src++ = *src++)
NULL;
}
//1.判断形参指针是否为NULL
//2.最好不要直接使用形参
int my_strcpy4(char* dst, char* src)
{
if (dst == NULL || src == NULL)
{
return -1;
}
//辅助变量把形参接过来
char* to = dst;
char* from = src;
while (*dst++ = *src++)
NULL;
printf("my_strcpy4:to = %s\n", to);//如果src,则出错
return 0;
}
int main()
{
char src[] = "abcefkjklsj";
char dst[100] = { 0 };
int ret = 0;
ret = my_strcpy4(dst, src);
if (ret != 0)
{
printf("my_strcpy4 error: %d\n", ret);
return ret;
}
printf("my_strcpy4:dst = %s\n", dst);
printf("\n");
system("pause");
return 0;
}
字符串拷贝函数的实现
最新推荐文章于 2023-10-26 19:32:16 发布