#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>
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++;
tdest++;
}
if(*tdest == '\0')
{
return rsrc;
}
//回滚
fsrc = rsrc;
tdest = dest;
fsrc++;
}
return NULL;
}
// int main()
// {
// char *src = "llmllhellme worldllmp";
// char ch[] = "llm";
// char* p = my_strstr(src, ch);
// int count = 0 ; //记录个数
// while(p != NULL)
// {
// count++;
// p += strlen(ch);
// p = my_strstr(p,ch);
// }
// printf("%d\n",count);
// return 0;
// }
int main()
{
char *src = "llmllhellme worldllmp";
char ch[] = "llm";
char* p = my_strstr(src, ch);
int count = 0 ; //记录个数
do
{
if(p)
{
count++;
p += strlen(ch);
p = my_strstr(p,ch);
}
} while(p);
printf("%d\n",count);
return 0;
}
字符串查找字符串个数
最新推荐文章于 2024-05-18 07:00:00 发布