#include <stdio.h>
#include <string.h>
main() {
char * str = "abcdefgh";
char *pattern = "ku";
char substr[100];//char型数据如果没有赋初值 默认值是0 不论是否是函数内还是全局变量
//char数组也是如此 默认元素都是0
//int数组和int一样 如果是在函数外定义的(也就是全局变量) 不初始化会有默认值0
//但是int 以及 int数组 在函数中定义 是没有默认值的 它会是一个随机值s
int arr[100]={1};//这里是将第一个元素初始化为1 且其它元素初始化为0
//所以想要在定义int数组时 所有元素全部初始化为0 int arr[100]={0}
int i=0;
for (i = 0; str[i] != '\0'; i++) {//枚举字符串 //以a开头 b开头 c开头...
int j = i;
for (j = i; str[j] != '\0'; j++) {//a开头的字串又有不同长度 ab abc abcd...
//截取字串 将新的子串放入到substr中
initStr(substr,100);
//i是开头 //j是末位
int k;
int index=0;
for(index=0,k=i;k<=j;k++,index++){
substr[index]=str[k];
printf("%c",substr[index]);
if(strcmp(substr,pattern)==0){
printf("\n-----\n");
}
}
substr[++index]='\0';
printf("\n");
}
}
}
void initStr(char substr[],int n){
int i=0;
for(;i<n;i++){
substr[i]=0;
}
}