//src是源字符串,sub是需要查找字符的长度
//返回值为在子串在源字符串的位置
int silence_strstr(const char *src, const char *sub){
if (src == NULL || sub == NULL)
{
printf("src == NULL || sub == NULL\n");
return -1;
}
//判断查找字符串不能比源字符串长
if (strlen(src) < strlen(sub))
{
printf("you src number is low sub number\n");
return -1;
}
const char *_src = src;
const char *_sub = sub;
int len = 0;
//通过flag变量来查找子串在源字符的位置
int flag = 0;
//便利源字符串
while (*_src != '\0'){
//如果flag是0,则表示子串和源字符串不匹配
if (flag == 0)len++;
if (*_src == *_sub)
{
//当flag为1时,则表示已经匹配到子串了
flag = 1;_src++;
_sub++;
}
else
{
_src++;
}
}
return len;
}