有谁知道没有中断的 switch 语句的“技术名称”?
我翻了几本教科书,在网上搜索了很长时间,没有结果。
一个没有中断的 switch 语句(也没有循环,所以它不是 Duff 的设备),我只会调用一个jump table。
可以肯定的是,这不是结构化编程常用的工具之一。
跌倒?
还是您在谈论一个没有中断的特定 switch 语句,称为Duff's Device?
send(to, from, count)
register short *to, *from;
register count;
{
register 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);
}
}
当从一个 Case 子句继续执行到下一个 Case 子句时,称为“失败”。
switch (i) {
case 1:
// do something
case 2:
// do something else
break;
case 3:
// do another thing
}
从案例 1 到案例,执行将“失败”,但不会从案例 2 到案例 3。这是您要问的吗?