For
来自YFRobotwiki
描述
for 语句是用于重复执行在大括号内的一段代码。通常使用一个增量计数器来增加计数和终止循环。for语句用于重复性操作非常实用,经常和数组结合被用于操作数据或引脚。
for循环语句开头有3个部分:
for (initialization/初始化; condition/条件判断; increment/增量计数) { //statement(s); //执行语句 }
初始化只在开始执行一次。每次执行一次循环,都会进行一次条件判断;如果为真,则执行括号内语句并增量计数,然后再次条件判断。当条件判断为假时,终止循环。
示例
// Dim an LED using a PWM pin int PWMpin = 10; // LED in series with 470 ohm resistor on pin 10 void setup() { // no setup needed } void loop() { for (int i=0; i <= 255; i++){ analogWrite(PWMpin, i); delay(10); } }
编码技巧
C语言中 for 循环语句 比其他计算机语言中的for语句 更加灵活,其中包括 BASIC。除了分号以外,任何其他3个部分(initialization/初始化、condition/条件判断、increment/增量计数)都可以省略。初始化、条件判断、增量计数可以是任何无关变量的有效C语句,或使用任何C数据类型包括 float。这些各种类型不寻常的for语句可能会解决一些罕见的编程问题。
例如,使用乘法的增量将生成一个等比数列:
for(int x = 2; x < 100; x = x * 1.5){ println(x); }
生成: 2,3,4,6,9,13,19,28,42,63,94
另一个示例,使用for循环 使 LED 产生渐亮渐灭的效果:
void loop() { int x = 1; for (int i = 0; i > -1; i = i + x){ analogWrite(PWMpin, i); if (i == 255) x = -1; // switch direction at peak delay(10); } }
更多建议和问题欢迎反馈至 YFRobot论坛