#include<stdio.h>
#include<windows.h>
#include<assert.h>
char* my_strstr(const char*str1,const char*str2)
{
char*cp1 = (char*)str1;
char*cp2 = (char*)str2;
char*str = NULL;
assert(str1!=NULL);
assert(str2!=NULL);
if(*str2 == '\0')
return NULL;
while(*cp1)
{
str = cp1;
cp2 = (char*)str2;
while(*str && cp2 && (*str == *cp2))
{
str++;
cp2++;
}
if(*cp2 == '\0')
return cp1;
cp1++;
}
}
int main()
{
char s[] = "hello world";
char l[] = "llo";
printf("%s\n",my_strstr(s,l));
system("pause");
return 0;
}
#include<windows.h>
#include<assert.h>
char* my_strstr(const char*str1,const char*str2)
{
char*cp1 = (char*)str1;
char*cp2 = (char*)str2;
char*str = NULL;
assert(str1!=NULL);
assert(str2!=NULL);
if(*str2 == '\0')
return NULL;
while(*cp1)
{
str = cp1;
cp2 = (char*)str2;
while(*str && cp2 && (*str == *cp2))
{
str++;
cp2++;
}
if(*cp2 == '\0')
return cp1;
cp1++;
}
}
int main()
{
char s[] = "hello world";
char l[] = "llo";
printf("%s\n",my_strstr(s,l));
system("pause");
return 0;
}