用C++编程一个函数实现一个字符串是否包含另一个字符串?
int Isincluded(char *strfirst,char *strsecond,flag)
{ 包含返回flag=1,否则0}
追问:关键这是笔试题 不要用标准库函数
int Isincluded(char *strfirst,char *strsecond,flag)
{ 包含返回flag=1,否则0}
追问:关键这是笔试题 不要用标准库函数
答案:bool Isincluded(const char *lpszRes, const char *lpszDst)
{
const char *p1 = lpszRes;
const char *p2 = lpszDst;
int nResLen = strlen(lpszRes);
int nDesLen = strlen(lpszDst);
if(nResLen < nDesLen) return false;
while (p1 != lpszRes+nResLen)
{
int nLen = strlen(p1);
if (nLen < nDesLen) return false;
const char *p3 = p1;
p2 = lpszDst;
while (p3 != p1+nDesLen)
{
if(*p3 == *p2)
{
++p3;
++p2;
continue;
}
else
break;
}
if(p3 == p1+nDesLen)
return true;
++p1;
}
return false;
}strlen 还是能用不??
char* strstr( const char* str1, const char*str2)不是又现成的方法吗 <string.h>
返回STR2中第一次出现STR1的位置