上面的C代码有效吗?

上面的C代码有效吗?,c,C,我在大学的一次编程竞赛中被问到这个问题 void duff(register char *to, register char *from, register int count) { register int n=(count+7)/8; switch(count%8){ case 0: do{ *to++ = *from++; case 7: *to++ = *from++; case 6: *to++ = *from++;

我在大学的一次编程竞赛中被问到这个问题

void duff(register char *to, register char *from, register int count)
  {
      register int n=(count+7)/8;
      switch(count%8){
      case 0: do{ *to++ = *from++;
      case 7:  *to++ = *from++;
      case 6: *to++ = *from++;
      case 5: *to++ = *from++;
      case 4: *to++ = *from++;
      case 3: *to++ = *from++;
      case 2: *to++ = *from++;
      case 1: *to++ = *from++;
              }while( --n >0);
      }
  }

上面的C代码有效吗?如果是这样的话,它想实现什么?为什么会有人做上述事情

是的,它被称为达夫装置

据我记忆所及,它是由一个为电影(星球大战或类似的东西)制作特效的人写的。这样写是为了获得最大的性能

但是,我建议您这样写代码:不


让你的代码可读

@phresnel:很抱歉,可能是我的复制品。我在一个益智网站上看到了这个问题。