- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
不幸的是,我在 FPGA 协同设计期间陷入了基本的 for 循环。我想迭代像素数组。因此我想使用以下 c 代码:
#define WIDTH 640
#define HEIGHT 480
...
int y = 0;
int x = 0;
for(; y < HEIGHT; y++)
for(; x < WIDTH; x++)
printf("X: %4i Y: %4i Color: %x \n", x, y, (0x3FF & x) << 11 | (0x1FF & y) << 2 | col);
调试终端输出如下:
X: 0 Y: 0 Color: 1
X: 1 Y: 0 Color: 801
X: 2 Y: 0 Color: 1001
X: 3 Y: 0 Color: 1801
...
我不知道为什么外层循环会被完全忽略而内层循环正常工作?外循环将停留在索引值“0”,这不应该是这种情况。
如果我在 for 循环条件内初始化循环指示,它将按预期工作。
#define WIDTH 640
#define HEIGHT 480
...
int y;
int x;
for(y = 0; y < HEIGHT; y++)
for(x = 0; x < WIDTH; x++)
printf("X: %4i Y: %4i Color: %x \n", x, y, (0x3FF & x) << 11 | (0x1FF & y) << 2 | col);
第一个代码片段不起作用的原因是什么?(使用 gcc 和一些 vivado 集成编译器编译)。
最佳答案
让我们仔细看看循环:
for(; y < HEIGHT; y++)
for(; x < WIDTH; x++)
首先进入外循环,其中y
等于0
。然后进入内部循环,该循环将从 0
迭代 x
到 WIDTH
。
然后内循环结束,外循环迭代,y
变为1
。然后再次进入内部循环,其中 x
等于 WIDTH
。因此内循环将不再迭代,让外循环迭代直到 y
达到 HEIGHT
。
每次重新开始内循环时,您都需要重置x
:
for(; y < HEIGHT; y++)
for(x = 0; x < WIDTH; x++)
如果您只是尝试debug,这将是非常显而易见的你的程序。
关于c++ - 嵌套 for 循环的外层 for 循环在执行时将被忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53711596/
我有一组使用如下 HTML 模板的 HTML 网页,每个 HTML 页面都有不同数量的内容。所有 HTML 页面都使用相同的 CSS 文件,该文件也在下面给出。 正如我所说,每个页面的内容都不同,我希
我正在尝试以下操作。我有一个 div,其中包含一个带有大边框描边的框。这是我一直在玩的代码。 .insta{ background:#000; width:820px; height:30
所以关于 masonry.js,我遇到了一个似乎在其他任何地方都找不到的奇怪问题。 我有 the latest (3.10) version我将它包含在我的 wordpress 主题的 functio
我是一名优秀的程序员,十分优秀!