C语言中一个替换 strcpy的极好的方法

 在C语言中有个方法:strcpy() 使用时经常容易内存申请不足,或是没有申请内存导致,复制的时候报错,我新写了一个方法,弥补这个缺陷

char *strcpy1(char *strDes, char *strSrc)
{  // printf("\nstrDes--%s\n",strDes);
   // printf("\nstrSrc--%s\n",strSrc);
    if(strSrc==NULL) return strDes; 
    strDes=(char *)malloc(strlen(strSrc)+1); //多一个空间用来存储字符串结束符'\0' 
    char *p=strDes;
    while(*strSrc!='\0')
        {
            *p++=*strSrc++;
        }
    *p='\0'; 
//    printf("\n%s\n",strDes);
    return strDes;
}  

有需要的可以直接拷贝走实用

posted @ 2014-02-28 10:52  aspirant  阅读(1706)  评论(0编辑  收藏  举报