c语言:在字符串里查找字符串

char* my_strstr(char* src, char* dest)
{
    char* fsrc = src;//用作于循环遍历的指针
    char* rsrc = src;//记录每次相同的首地址
    char* tdest = dest;
    while (*fsrc)
    {
        rsrc = fsrc;//定位遍历的位置
        while (*fsrc == *tdest && *fsrc !='\0')//如果没有*fsrc !='\0,则程序将跳出条件判断。
        {
            fsrc++;
            tdest++;
        }
        if (*tdest == '\0')
        {
            return rsrc;//返回相同字符串的地址
        }
        //回滚
        fsrc = rsrc;//返回定位的位置
        tdest = dest;//返回初始位置
        fsrc++;
    }
    return NULL;
}
int main()
{
    char src[] = "hello world";
    char dest[] = "llo";
    char* p = my_strstr(src, dest);
    printf("%s\n",p);
    return 0;
}

你可能感兴趣的:(C语言)