码迷,mamicode.com
首页 > 其他好文 > 详细

创建一个函数,实现库函数strstr的功能

时间:2015-11-09 00:15:24      阅读:263      评论:0      收藏:0      [点我收藏+]

标签:创建一个函数   实现库函数strstr的功能   

★创建一个函数,实现库函数strstr的功能

#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
char *my_strstr(char *src,char *dst)
{
assert(dst);
assert(src);
char *p = src;
char *q = dst;
while ((*dst)&&(*src))
{
if (*src == *dst)        //两指针内容相等时,指针向后移动不断匹配
{
src++;
dst++;
}
else
{
src = ++p;   //指针内容不等时,子串指针跳至首地址,原串返回到此次匹配开始的下一位置
dst = q;
p = src;
}
}
if (*dst == ‘\0‘)    //子串为‘\0‘时,说明匹配完成,返回原串与子串相同的首地址处
{
return p;
}
else
{
return NULL;    //没有匹配项,返回空
}
}
int main()
{
char arr1[] = "abbaac";
char arr2[] = "abba";
char *ret = my_strstr(arr1, arr2);
printf("%s\n",ret);
system("pause");
return 0;
}

技术分享

本文出自 “温暖的微笑” 博客,请务必保留此出处http://10738469.blog.51cto.com/10728469/1710723

创建一个函数,实现库函数strstr的功能

标签:创建一个函数   实现库函数strstr的功能   

原文地址:http://10738469.blog.51cto.com/10728469/1710723

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!