求子串函数!~请各位高手指点一下错误!
题目:求子串函数【包括产生s 、传递s(起始位置、长度)、返回去的子串由sub表示、输出】我编的程序:
#include "stdio.h"
#define maxlen 10
typedef struct
{
char ch[maxlen];
int len;
}SString s, SString sub;
SubString (SString *sub,SString s, int pos , int len )
{
int i;
if (pos<0 || pos>s.len || len<1 || len>s.len->pos)
{
sub->len =0;
return (0);
}
else
{
for (i=0;i<len ;i++)
sub->ch[i]= s.ch[i+pos];
sub->len =len;
return (1);
}
}
Input (SString s)
{
printf ("请输入10个字符");
for (i=0;i<len;i++)
scanf("%c",&s->ch[i]);
}
Output (SString *sub,int len )
{
int i;
for(i=0;i<len;i++)
{
printf("%c",sub->ch[i]);
sub->len=len;
}
}
void main()
{
struct SString s;
struct SString sub;
int k;
Input(SString s);
k=SubSString;
if(k==0)
printf("没有该子串");
else (k==1)
Out(SString *sub, int len); }