指针太乱了 高手解答哦
#include <stdio.h>#include <string.h>
void fun(char *s, char *t1, char *t2, char *w)
{
char *p, *r, *a=s;
strcpy(w, s);
while(*w)
{
p=w;
r=t1;
while(*r)
{
if(*r==*p)
{
r++;
p++;
}
else
break;
}
if(*r=='\0')
a=w;
w++;
}
r=t2;
while(*r)
{
*a=*r;
a++;
r++;
}
}
void main()
{
char s[20], t1[20], t2[20], w[20];
printf("please input string:\n");
scanf("%s", s);
printf("please input substring:\n");
scanf("%s", t1);
printf("please input substring:\n");
scanf("%s", t2);
if(strlen(t1)==strlen(t2))
{
fun(s, t1, t2, w);
printf("the result is :%s", w);
}
else
printf("error!!");
getch();
} 代码是对的 我的疑问是 为什么不可以用fun函数中的形参来操作 而是要再定义几个指针来代替她们呢, 我直接用形参来操作是不对的 结果,,为什么呢 拜托高手们能详细解答一个这个小问题,,,,我想不明白的,,,,谢谢哈