不使用库函数实现字符串拷贝函数strcpy写法

来源:互联网 发布:mac怎么用 编辑:程序博客网 时间:2024/05/24 04:32

函数实现:

#include <stdio.h>

char *strcpy1(char *des,const char *src)
{
    if((des==NULL)||(src==NULL))
    {
        return NULL;
    }
    char *descopy=des;
    while((*des++ = *src++)!='\0')
        {
            NULL;
        }
            return descopy;
}

int main()
{
    printf("copy string start\n");
    char strsrc[]="hello world!";
    char des[20];
    strcpy1(des,strsrc);
    printf("des:%s\n",des);
    return 0;

}

使用char *的原因是函数strcpy1()是实现把参数src字符串复制到dst参数,由于dst参数将进行修改,所以它必须是个字符数组或者是一个指向动态分配内存的数组的指针,不能使用字符串常量。