C语言程序员

模拟实现strstr

2018-05-11  本文已影响0人  修夏之夏i

strstr:
判断一个字符串在另一个字符串首次出现的位置.

#define _CRT_SECURE_N0_WARNINGS 1
#include <stdio.h>
#include<assert.h>

//判断一个字符串在另一个字符串首次出现的位置
char* my_strstr(const char *str, const char* substr)
{
    assert(str != NULL);
    assert(substr != NULL);

    while (*str)
    {
        const char*s1 = str;
        const char*s2 = substr;
        while (*s1&&*s2&&*s1 == *s2)
        {
            s1++;
            s2++;
        }
        if (*s2 == '\0')
            return str;
        str++;
    }
    return NULL;
    
}

int main()
{
    char arr[] = "abbbbcef";
    char *ret = my_strstr(arr, "bbc");
    if (ret != NULL)
        printf("%s\n", ret);
    else
        printf("不存在\n");
    return 0;
}

运行结果:


字符串查找.png
上一篇下一篇

猜你喜欢

热点阅读