分类: 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; }