字符串与字符串比较
帮忙看一下,当第二个字符串不在第一个字符串中,为什么不输出-1呢,困惑中,谢谢//字符串与字符串比较
#include<stdio.h>
int mystrsubstring(char *p,char *q);
void main()
{
int n;
char ch1[30],ch2[30],*p,*q;
q=ch1,p=ch2;
printf("请输入第一个字符串:");
gets(ch1);
printf("请输入第二个字符串:");
gets(ch2);
n=mystrsubstring(ch1,ch2);
printf("%d\n",n);
}
int mystrsubstring(char *q,char *p)
{
int i=0,j=0,count=0,flag=1,value;
while(p[i]!='\0')
{
flag=1;
if(p[i]==q[j])
{
flag=0;
count++;
i++;
j++;
}
else
{
if(flag==0)
{
i=0;
j=j-count+1;
}
else
{
j++;
}
}
}
if(p[i]=='\0' && flag==0)
{
value=j-count;
}
else
{
value=-1;
}
return value;
}