void fun(char *a,char *b)
{while(*a==‘*’) a++;
while(*b=*a) {b++;a++;}
}
main()
{ char *s=”****a*b****”,t[80];
fun(s,t); puts(t);
}
能详细解释下吗?
>> 本文固定链接: http://www.vcgood.com/archives/2628
void fun(char *a,char *b)
{while(*a==‘*’) a++;
while(*b=*a) {b++;a++;}
}
main()
{ char *s=”****a*b****”,t[80];
fun(s,t); puts(t);
}
能详细解释下吗?
>> 本文固定链接: http://www.vcgood.com/archives/2628
你必须先 登录才能发表评论。
应该是从一串字符的第一个不为*的字符起覆盖到另一个数组里,最后打印出来的结果是a*b****
对于这段代码 while(*a==‘*’) a++; 所起的作用就是跳过前面的* 如果*a的值不是* 就将地址往后推一位知道遇见第一个不为*的字符
while(*b=*a) {b++;a++;} 起得作用就将余下的字符都覆盖到b的地址,b在主函数里就是t[80]这个数组