模拟实现strstr

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模拟实现strstr相关的知识,希望对你有一定的参考价值。

写这类模拟实现功能函数的题首先要弄清楚要实现的函数的参数返回值等基本信息,其次就是实现其功能的过程

const char My_strstr(const char str1, const char *str2)

{
const chars1 = NULL;
const char
s2 = NULL;
const char flag = str1;
while (
str1 != ‘\0‘)
{
s1 = flag;//s1回退到上一次的下一个位置
s2 = str2;//s2回退到str2的起始位置
while (s1 != ‘\0‘&&s2 != ‘\0‘&&s1 == s2)
{
s1++;
s2++;
}
if (s2 == ‘\0‘)
{
return flag;
}
if (
s1 == ‘\0‘)
{
return NULL;
}
flag++;
}
return NULL;
}
int main()
{
char str1[100] = "accdef";
char str2[] = "cd";
printf("%s\n", My_strstr(str1, str2));
system("pause");
return 0;
}

以上是关于模拟实现strstr的主要内容,如果未能解决你的问题,请参考以下文章

模拟实现strstr

模拟实现strstr和strrstr

strstr的模拟实现

字符串库函数及重点函数的模拟实现下篇--- strstr + strtok + strerror

模拟实现部分库函数(strcpy,strcmp,strcat,strstr,memcpy,memmove,memset)

模拟实现库函数strlen,strcpy,strstr,memmove,memcpy,strcat