【发布时间】:2011-06-26 16:31:11
【问题描述】:
我想使用一个字节变量i 来执行一段代码 256 次。下面的行无限循环,是否有一个整洁的替代方案可以工作?
for (i = 0; i < 255; i++){
希望不使用:
- 16 位变量,(或任何额外的位)
- 嵌套循环
while(1)-
break;声明
谢谢
【问题讨论】:
-
为什么它会无限循环?
-
因为
i永远不会达到 256,因为它是一个 8 位无符号数 -
@Armen 达到 255 并切换回 0
-
@Jodes: 是
i是无符号的8bit,它的最大值是255。上面不会无限循环。 (但它只会循环 255 次)。 -
@Jodes:如果您因为使用不寻常的平台而有不寻常的要求,我建议您在问题中提请注意。如果从一开始就很清楚您正在为 8 位微控制器构建(我完全相信您可能会变得更小/更快使用 8 位类型的代码)...
标签: c for-loop infinite-loop