char *search(char *s1,char *s2) //原字符串,需要查找的子串
{
int flag=0; //判断用
char *x,*y;
while(*s1!='\0') //大循环s1
{
y=s2; //每次把y初始化为s2的首地址
if(*s1==*s2) //若s1的值和s2的值相等时
{
x=s1; //把x初始化为s1当前的地址
while(*y!='\0') //小循环y,即需要查找的子串
{
flag=0; //初始化flag为0
if(*x==*y) //若x的值和y的值相等,flag改为1; x,y同时移动到下一位
{
flag=1;
x++;
y++;
}
else //如果没有坚持到子串结束,或不符合,则跳出循环
break;
}
}
if(flag) //如果flag为1则说明子串已经全部匹配到,否则s1+1继续大循环
break;
s1++;
}
if(flag) //如果成功,返回s1的地址,即子串的首地址
return s1;
else
return NULL;
}
字符串查询
最新推荐文章于 2023-08-11 07:30:00 发布