许多年前,而在紧张的图形工作的I/O问题,汤姆·达夫展开的循环,并创造了他Duff's Device如下:(注意这个使用旧式函数参数 - 这是不是一个错误)Duff的设备是否可以用其他语言工作?
dsend(to, from, count)
char *to, *from;
int count;
{
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语言的汇编和编码思想中出现,并且依赖于C的case语句。隔行扫描控制结构中的这种创造力可以用其他语言工作吗?
什么是“旧式功能参数”? – 2017-04-08 08:52:54