题目如下:
有一字符串,包含n个字符,写一个函数,将此字符串中从第m个字符开始的全部字符复制成另一个字符串,并输出复制后的字符串。
我的程序:
char *copy(x,y)
char *x;
int y;
{ char *s; /另定义一指针s,把原字符串后面的字符都一一赋给它/
int i,j;
i=y;
j=0;
while(*(x+i)!='\0')
{ *(s+j)=*(x+i);
i++;
j++;
}
return(s);
}
main()
{
char a[100],*p;
int m;
printf("the original string is:\n");
gets(a);
printf("m=");
scanf("%d",&m);
p=copy(a,m);
printf("the copyed string is:\n");
printf("%s",p);
}
比如输入一个字符串:reading-room,如果另m=9的话,应该输出为room,但是不知道为什么为什么我的输出不对,是不是我函数定义那个指针s的时候有什么错误哦?或者是其他的错?请指点,感激不尽~~