#include<stdio.h>
#include<string.h>
int main()
{
char str[512]="8686542101000";
char substr[]="42101";
char *p=str,*q=substr;
int flag=0;
for(;*(p+strlen(substr)-1);p++)
{printf("%d\n",*(p+strlen(substr)-1));
for(q=substr;*p==*q&&*q;p++,q++);
if(!*q)
{
flag=1;
break;
}
}
if(flag==1) puts("accord");
else puts("not accord");
}
for( ; *(p+strlen(substr)-1); p++) {
printf("%d\n", *(p + strlen(substr) - 1));
for (q = substr; *p == *q && *q; p++, q++);
if(!*q)
{
flag = 1;
break;
}
}
这个for循环是判断如果
*(p+strlen(substr)-1)
这个指针为真,那么先输出这个东西,然后再进行一个for循环,里面进行一个for循环,里面有一个if判断,判断如果*q不为真,那么flag = 1,然后输出
char str[512]="8686542101000";
char substr[]="42101";
这两句是定义数组,往里存值
char *p=str,*q=substr;
int flag=0;
第一句是定义了两个指针,第二句是定义了一个变量
最后那个if就不说了,顺便说一下,你的码风可以改一改,O(∩_∩)O哈哈~,可以看看我的博客