strcpy 和 strlen 的实现

856阅读 0评论2009-12-30 gnometerminal
分类:C/C++

#include <stdio.h>
#include <stdlib.h>
#include <assert.h>

char *myStrcpy(char *strDest, const char *strSrc)
{
    assert(strDest != NULL && strSrc != NULL); //防止指针为空

    char *strAddr = strDest;
    while((*strDest++ = *strSrc++) != '\0') ;
    return strAddr;
}

int myStrlen(const char *strSrc)
{
    assert(strSrc != NULL);
    int len = 0;
    while (*strSrc++ != '\0')
    {
        len++;
    }
    return len;
}

int main()
{
    char *str = "hello world";
    char strDest[20];

    printf(myStrcpy(strDest,str));
    printf("\n");

    printf("%d\n", myStrlen(strDest));

    return 0;
}


上一篇:值传递、地址传递和引用型
下一篇:C++标准库简介(转)