duffs-device相关内容

Duff 的设备是如何工作的?

我在 Duff 的设备上阅读了关于维基百科的文章,但我没有不明白.我真的很感兴趣,但我已经阅读了几次那里的解释,但我仍然不明白 Duff 的设备是如何工作的. 更详细的解释是什么? 解决方案 其他地方有一些很好的解释,但让我试一试.(这在白板上要容易得多!)这是带有一些符号的 Wikipedia 示例. 假设您要复制 20 个字节.第一遍程序的流程控制为: int 计数;// ..
发布时间:2022-01-31 09:52:32 其他开发

嵌套案例语句

谁能解释一下 case 语句嵌套到另一个语句中.我指的是 Duffs Device,所有其他 case语句位于与 case 0 关联的 do-while 循环内.我无法理解它.在我看来,它应该像嵌套的if.但后来我肯定错过了一些东西.请解释一下. 解决方案 在 switch-case 构造中,switch 主体只是一个普通或复合语句,它可以包含任何其他有效的 c 语句.它还可能包含 cas ..
发布时间:2022-01-19 11:12:52 其他开发

C中的混合'switch'和'while'

我最近阅读了此页面关于奇怪的 C 代码段的信息.他们中的大多数是可以理解的.但是这个我看不懂: switch(c & 3) while((c -= 4) >= 0){富();案例3:富();案例2:富();情况1:富();案例0:} 谁能帮我弄清楚这段代码背后的逻辑是什么?它是如何工作的? 解决方案 duff 的设备注释应该可以很好地解释背景,所以我将尝试解释这个案例: 开关检查 ..
发布时间:2022-01-19 10:58:31 其他开发

Duff的设备代码如何编译?

我明白为什么 Duff 的设备 比可以展开的普通循环代码更快,但是没有优化.但我还不明白如何编译代码. 我想这是关于 switch 语法的技巧.但现在不是了. switch句中怎么能存在do while句?很奇怪. 有谁可以解释一下吗? 编辑:另一个问题.为什么 duff 使用 8?它可以是 16、65536 或其他.因为代码大小?还有别的原因吗?例如,缓存或流水线的好处. ..
发布时间:2022-01-19 10:27:16 C/C++开发

切换案例奇怪的范围

查看一些第 3 方 C 代码时,我遇到了类似的情况: 开关(状态){案例0:if (c=='A') {//打开大括号//代码...休息;//大括号未闭合!情况1://代码...休息;}//右大括号!案例2://代码...休息;} 我正在查看的代码似乎只是一个错字,但令我惊讶的是它编译时没有出现错误. 为什么这是有效的 C? 与在预期位置关闭大括号相比,此代码的执行有什么影响? 有什么 ..
发布时间:2022-01-19 10:25:22 其他开发

在 C 中混合“开关"和“同时"

我最近阅读了这个页面,了解奇怪的 C 代码片段.他们中的大多数是可以理解的.但我无法理解这一点: switch(c & 3) while((c -= 4) >= 0){富();案例3:富();案例2:富();情况1:富();案例0:} 谁能帮我看看这段代码背后的逻辑是什么?它是如何工作的? 解决方案 duff 的设备注释应该已经很好地解释了背景,所以我会尽量解释这个案例: swi ..
发布时间:2021-12-26 18:20:13 其他开发

达夫的设备是如何工作的?

我在 Duff 的设备上阅读了 维基百科上的文章,但我不知道不明白.我真的很感兴趣,但我已经读了几次那里的解释,但我仍然不明白 Duff 的设备是如何工作的. 更详细的解释是什么? 解决方案 其他地方有一些很好的解释,但让我尝试一下.(这在白板上容易得多!)这是带有一些符号的维基百科示例. 假设您要复制 20 个字节.第一遍程序的流程控制为: int 计数;//设置为 20{ ..
发布时间:2021-12-02 00:04:37 其他开发

嵌套 case 语句

有人可以解释将 case 语句嵌套到另一个语句中吗?我指的是 Duffs Device,其中所有其他 case语句位于与 case 0 相关联的 do-while 循环内.我无法理解它.在我看来,它应该像一个嵌套的 if.但是我肯定错过了一些东西.请解释. 解决方案 在 switch-case 结构中,switch 主体只是一个普通的或复合的语句,它可以包含任何其他有效的 c 语句.它还可 ..
发布时间:2021-09-03 18:34:14 其他开发

混合'开关'和'而'用C

我最近读此页面了解奇怪Ç段codeS。他们中的大多数是可以理解的。但我不明白这一个: 开关(C&安培; 3),而((C - = 4)> = 0){ 富();案例3: 富();案例2: 富();情况1: 富();情况下0: } 任何人都可以请帮我出这是code的背后是什么逻辑?它是如何工作的? 解决方案 本达夫设备注释应该解释背景不够好,所以我会尽 ..
发布时间:2016-08-23 10:08:34 C/C++

如何达夫设备code编译?

我明白了为什么达夫设备是比正常循环code更快从而可以解开,但不进行优化。但我不明白是怎么code,可又编译。结果 我想这是一个关于开关的语法把戏。但现在不是了。 哪有的做的,而的句子中的开关的句子存在吗?十分怪异。结果 是否有任何人谁可以解释一下吗? 编辑: 另一个问题。 为什么达夫使用8?这可能是16,65536或什么的。因为code尺寸的?难道还有其他原因吗?例如,高速缓存或流水 ..
发布时间:2016-08-18 23:26:42 C/C++开发

如何达夫设备的工作?

我读过关于达夫设备维基百科上文章,我不明白这一点。我真的很感兴趣,但我看过那里的解释夫妇的时候,我还没有得到它的达夫设备是如何工作的。 会更详细的解释是什么? 解决方案 有一些很好的解释在其他地方,但让我试试看。 (这是在白板上轻松了许多!)下面是维基百科的例子有一些符号。 假设您正在复制20个字节。该程序用于第一遍的流量控制是: 诠释计数; //设置为20 { INT N ..
发布时间:2016-08-17 20:31:43 C/C++