首页 > 用户发贴区 > 编程问题提问区 > 请教道函数题目
2008
08-16

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); 
 } 


能详细解释下吗?


请教道函数题目》有 1 条评论

  1. TONYAZITEN 说:

    应该是从一串字符的第一个不为*的字符起覆盖到另一个数组里,最后打印出来的结果是a*b****

    对于这段代码 while(*a==‘*’) a++;  所起的作用就是跳过前面的* 如果*a的值不是* 就将地址往后推一位知道遇见第一个不为*的字符

     while(*b=*a)  {b++;a++;}  起得作用就将余下的字符都覆盖到b的地址,b在主函数里就是t[80]这个数组

留下一个回复