字符串包含函数有何错误
小弟写了一个字符串包含函数,不知道是什么地方错了 请高手指教!STR1包含STR2 则 返回1 不包含返回0#include "stdio.h"
#include "string.h"
main()
{ int ca(char str1[],char str2[]);
char str1[]="abcdefg",str2[]="efg";
printf("%d",ca(str1,str2));
}
int ca(char str1[],char str2[])
{char *p1=str1,*p2=str2; int i=0;
while(p1)
{
if(*p2==*p1&&*p2!='\0')
{ p2++,p1++,i=i+1;}
else p1++;
}
if (i==strlen(str2))
return 1;
else
return 0;
}