Arduino 循环的字节变量

Arduino 循环的字节变量,arduino,byte,arduino-ide,Arduino,Byte,Arduino Ide,请帮助我解释这个for循环: for (byte color_bit = 23 ; color_bit != 255 ; color_bit--) { ...do something } 我想我理解(从Google和StackOverflow)这里的“color_bit”是一个无符号变量。这意味着循环将从23倒计时到0。但接下来会发生什么?它是否尝试从255开始并继续倒计时?但是因为测试是“!=255”,它会停止吗 在我看来,这似乎是逻辑,但我正在使用的工具(Arduino IDE)没

请帮助我解释这个for循环:

for (byte color_bit = 23 ; color_bit != 255 ; color_bit--) {
    ...do something
}
我想我理解(从Google和StackOverflow)这里的“color_bit”是一个无符号变量。这意味着循环将从23倒计时到0。但接下来会发生什么?它是否尝试从255开始并继续倒计时?但是因为测试是“!=255”,它会停止吗


在我看来,这似乎是逻辑,但我正在使用的工具(Arduino IDE)没有调试器,因此我无法单步通过代码查看值。

如果“字节”是8位无符号的,则循环将看到位\u color=23..0(24次迭代)。当color_bit=255时,循环停止。HTH.

如果“字节”是8位无符号的,循环将看到位\u color=23..0(24次迭代)。当color_bit=255时,循环停止。HTH.

您可以添加一个串行打印行,如下所示:

 for (byte color_bit = 23 ; color_bit != 255 ; color_bit--) {
      Serial.print(bit_color, DEC);
 }

要测试/调试计数序列。

您可以添加串行打印行,如下所示:

 for (byte color_bit = 23 ; color_bit != 255 ; color_bit--) {
      Serial.print(bit_color, DEC);
 }

测试/调试计数序列。

谢谢Jeff。由于代码最终出现在Arduino芯片上,因此没有控制台。但是,按照您的建议,我在VisualStudioC#编译器中设置了代码并逐步完成了它。我发现在循环降到零后,下一次迭代color_bit=255(循环结束)。由于您使用的是Arduino IDE,您应该能够使用内置串行监视器查看由serial.print命令创建的输出。它使用与将代码编程到板上相同的串行端口和电缆。请看通信->ASCII表下的示例。够了!谢谢你的提示!!谢谢你,杰夫。由于代码最终出现在Arduino芯片上,因此没有控制台。但是,按照您的建议,我在VisualStudioC#编译器中设置了代码并逐步完成了它。我发现在循环降到零后,下一次迭代color_bit=255(循环结束)。由于您使用的是Arduino IDE,您应该能够使用内置串行监视器查看由serial.print命令创建的输出。它使用与将代码编程到板上相同的串行端口和电缆。请看通信->ASCII表下的示例。够了!谢谢你的提示!!