详细介绍自己如何实现strstr函数
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int mystrstr(const char *str1 ,const char * str2)
{
int cunt=0;
int flag = 0;
if(strlen(str1) < strlen(str2)){
return -1;
}
while(*str1 != '\0' && *str2!='\0')
{
if(*str1 == *str2)
{
while(*str1 == *str2)
{
str1 ++;
str2 ++;
if(*str2=='\0'){
return cunt;
}
flag ++;
}
while(flag){
str1 --;
str2 --;
flag --;
}
}
cunt ++;
str1 ++;
}
return -1;
}
int main()
{
char a[]="abcdefghijklmnopqrstuvwxyzaabcdfsafsaasd";
char *str1=NULL,*str2=NULL;
str1=a;
printf("input char\n");
char *buff=(char *)malloc(sizeof(50));
str2=gets(buff);
int r=mystrstr(str1,str2);
printf("%d\n",r);
free(buff);
buff=NULL;
return 0;
}