请教这个程序实现什么功能?

请问这个程序实现什么功能??voidfoo(char*a,char*b,intlen){switch(len&0x7){default:while(len 7){len-

请问这个程序实现什么功能??
void   foo(char   *a,   char   *b,   int   len)
{
  switch(len   &0x7){
    default:
        while(len> 7){
            len-=8;   *b++   =   *a++;
          }
    case7:   *b++   =   *a++;
    case6:   *b++   =   *a++;
    case5:   *b++   =   *a++;
    case4:   *b++   =   *a++;
    case3:   *b++   =   *a++;
    case2:   *b++   =   *a++;
    case1:   *b++   =   *a++;
  }
}

自己研究了一天都不清楚,请指点。

[解决办法]
default 和 case 是条件判断后的跳转点
跳转到相应点后继续将其后的所有case都执行一遍