本文主要是介绍strstr()函数的具体实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
const char * MyStrStr(const char * string, const char * strCharSet)
{char * p1 = const_cast<char *> (string); //去常量性char * p2 = const_cast<char *> (strCharSet);char * pRet = NULL;while (*p1 != '\0'){char * ptemp1 = p1;char * ptemp2 = p2;int iCount = 0;if (*ptemp1 == *ptemp2) //源字符串某一字符与子串首字符相等,则检测后续字符是否与子串对应相等{while (*ptemp1 == *ptemp2 && *ptemp2 != '\0'){ptemp1++;ptemp2++;iCount++;}//若相等字符串个数等于子串长度,则匹配成功if (ptemp2 == p2 + iCount){pRet = p1;break;}}++p1;}return pRet;
}
注:常量指针不可以给非常量指针赋值。
这篇关于strstr()函数的具体实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!