Loading...

Reference   Language | Libraries | Comparison | Changes

for语句

简述

for语句用于循环执行大括号内的所有语句。通常使用步进计数来进行循环的执行和退出。for语句通常用于重复操作,且常与数组结合使用来操作数据集合或引脚集合。

for语句头由三部分组成:

for (初始化表达式;条件表达式; 步进表达式) {

//执行语句块;

}

初始化表达式首先执行,且只执行一次。每次进入循环之前,条件表达式将被求值,若值为真,则执行语句块和步进表达式被顺序执行,然后继续求值并检测,直到值为假时退出循环。

样例

// 使用PWM引脚实现LED渐亮
int PWMpin = 10; // LED接470欧姆电阻后连上10脚

void setup()
{
  // 无须setup
}

void loop()
{
   for (int i=0; i <= 255; i++){
      analogWrite(PWMpin, i);
      delay(10);
   } 
}

编程提示

C语言的for循环语句比一些编程语言(如BASIC)的for语句更灵活。除了两个分号,循环头的三个部分都可以省略,或者可以是任何有效的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;             // 在递增最大值时切换至递减
      delay(10);
   } 
}

参见

Reference Home

更正、建议及新的文档应投递至论坛

Arduino手册的文本受 Creative Commons Attribution-ShareAlike 3.0 License协议保护,手册中的例子代码则贡献给公共领域。