在s1中查找s2字符串
char* my_strstr(const char* p1, const char* p2)
{
char* s1 = p1;
char* s2 = p2;
char* start=p1;
assert(p1 != NULL);
assert(p2 != NULL);
if (*p2 == '\0')
{
return p1;
}
//查找字符串
while (*start)
{
s1 = start;
s2 = p2;
while ((*s1 != '\0') && (*s1 == *s2) && (*s2 != '\0'))
{
s1++;
s2++;
}
if (*s2 == '\0')
{
return start;
}
if (*s1 == '\0')
{
return NULL;
}
start++;
}
return NULL;
}
int main(){
const char arr1[15] = "abcasfsd";
const char arr2[] = "sfsd";
char* ret = my_strstr(arr1, arr2);
//char* ret = strstr(arr1, arr2);//字符串查找
if (ret == NULL)
printf("子串不存在\n");
else
printf("%s\n", ret);
return 0;
}