strstr的实现

char* strstr(const char *str1, const char *str2)
{
    char *s1, *s2;
    _ASSERT(str1 && str2);
    //空字符串是任何字符串的子串
    if ('\0' == *str2){
        return (char*)str1;
    }
    while (*str1)
    {
        s1 = (char*)str1;
        s2 = (char*)str2;
        while ((*s1 == *s2) && *s1 && *s2){
            s1++; s2++;
        }
        //匹配成功
        if ('\0' == *s2){
            return (char*)str1;
        }        
        str1++;
    }
    return NULL;
}

posted on 2014-03-24 15:15  从此以后  阅读(178)  评论(0编辑  收藏  举报