分类: C/C++
2008-11-24 21:10:44
static const char* _strstr(const char* s1, const char* s2)
{
assert(s2 && s1);
const char* p=s1, *r=s2;
while(*p!='\0')
{
while(*p++==*r++);
if(*r=='\0')
return p;
else
{
r=s2;
p=++s1;
}
}
return NULL;
}
shitao12012009-02-25 21:16:41
这位兄弟代码有些问题,不能实现strstr的功能,需要添加如下代码 static const char* _strstr(const char* s1, const char* s2) { int i = 0; assert(s2 && s1); const char* p=s1, *r=s2; while(*p!='\0') { while(*p++==*r++) { i++;//新加 }; if(*r=='\0') return (p-i);//新加 else { r=s2; p=++s1; } } return NULL; }