/**********定位出src在dest字符串中的位置,若不存在就返回NULL*******/
char *my_strstr(const char *dest, const char *src)
{
assert(dest && src);//检测参数是否为空指针
char *p = NULL;
char *q = NULL;
while (*dest)
{
p = dest;
q = src; //用指针变量去保存两个字符串的首地址
while (*dest == *src)
{
dest++;
if (*src != '\0')
src++;
}
if (*dest != *src && '\0' == *src)
return p;
else if (*dest != *src && '\0' != *src)
{
dest = p;
src = q; //返回重新判断
if (*dest != '\0')
dest++;
}
}
return NULL;
}