函数要求:使用标准C语言实现下列标准库函数,设计中不得使用其他库函数。
函数原型:char *strstr(char *str1,char *str2);
说明:在字符串str1中,寻找字串str2,若找到返回找到的位置,否则返回NULL。
实现代码如下:
- #include <stdio.h>
- #include <errno.h>
- #include <assert.h>
- char *strstr(const char *find,const char *need);
- int main()
- {
- const char buf1[100] = "heelor";
- const char buf2[100] = "lor";
-
- const char *res =strstr(buf1,buf2);
- printf("the res=%s",res);
- return 0;
- }
- char *strstr(const char *find, const char *need)
- {
- assert(find !=NULL && need !=NULL);
- while( *find !='\0')
- {
- const char *p=find;
- const char *q =need;
- const char *res= NULL;
- if(*p == *q)
- {
- res= p;
- while(*p++ == *q++)
- ;
- if(*q == '\0')
- return res;
-
- }
- find ++;
- }
- return NULL;
- }
阅读(504) | 评论(0) | 转发(0) |