#include <iostream>
#include <stdlib.h>
#include<string.h>
#define maxsize 40
#define ok 1
#define error 0
using namespace std;
typedef char String[maxsize+1];
int String_assign(String m,char *chars)
{
int i;
if(strlen(chars)>maxsize)
{
return error;
}
else
{
m[0]=strlen(chars);
for(i=1;i<=m[0];i++)
{
m[i]=*(chars+i-1);
}
}
return ok;
}
int index(String m,String n,int pos )
{
int i=pos;
int j=1;
while(i<=m[0]&&j<=n[0])
{
if(m[i]==n[j])
{
i++;
j++;
}
else
{
i=i-j+2;
j=1;
}
}
if(j>n[0])
{
return i-n[0];
}
else
{
return 0;
}
}
int main()
{
String t,s1,s2;
int k;
cout<<"please input first string:"<<endl;
k=String_assign(s1,"abcdefg");
if(!k)
{
cout<<"串长s1超过maxsize!"<<endl;
}
cout<<s1<<endl;
cout<<"please input second string:"<<endl;
k=String_assign(s2,"def");
if(!k)
{
cout<<"串长s2超过maxsize!"<<endl;
}
cout<<s2<<endl;
k=index(s1,s2,1);
cout<<"the same character from start:"<<k<<endl;
return 0;
}