“For”的版本间的差异

来自YFRobotwiki
跳转至: 导航搜索
 
(未显示1个用户的5个中间版本)
第1行: 第1行:
<font color="orange" size="+1">'''Description'''</font>
 
  
The for statement is used to repeat a block of statements enclosed in curly braces. An increment counter is usually used to increment and terminate the loop. The for statement is useful for any repetitive operation, and is often used in combination with arrays to operate on collections of data/pins.
+
<font color="orange" size="+1">'''描述'''</font>
  
There are three parts to the for loop header:
+
 
 +
for 语句是用于重复执行在大括号内的一段代码。通常使用一个增量计数器来增加计数和终止循环。for语句用于重复性操作非常实用,经常和数组结合被用于操作数据或引脚。
 +
 
 +
 
 +
for循环语句开头有3个部分:
  
 
<pre style="color:dimgray">
 
<pre style="color:dimgray">
for (initialization; condition; increment) {
+
for (initialization/初始化; condition/条件判断; increment/增量计数) {
  
 
//statement(s);
 
//statement(s);
 +
//执行语句
  
 
}
 
}
第18行: 第22行:
  
  
The initialization happens first and exactly once. Each time through the loop, the condition is tested; if it's true, the statement block, and the increment is executed, then the condition is tested again. When the condition becomes false, the loop ends.
+
初始化只在开始执行一次。每次执行一次循环,都会进行一次条件判断;如果为真,则执行括号内语句并增量计数,然后再次条件判断。当条件判断为假时,终止循环。
  
  
<font color="orange" size="+1">'''Example'''</font>
+
<font color="orange" size="+1">''' 示例'''</font>
 +
 
  
 
<pre style="color:dimgray">
 
<pre style="color:dimgray">
第42行: 第47行:
  
  
<font color="orange" size="+1">'''Coding Tips'''</font>
+
<font color="orange" size="+1">''' 编码技巧'''</font>
  
The C for loop is much more flexible than for loops found in some other computer languages, including BASIC. Any or all of the three header elements may be omitted, although the semicolons are required. Also the statements for initialization, condition, and increment can be any valid C statements with unrelated variables, and use any C datatypes including floats. These types of unusual for statements may provide solutions to some rare programming problems.
 
  
For example, using a multiplication in the increment line will generate a logarithmic progression:
+
C语言中 for 循环语句 比其他计算机语言中的for语句 更加灵活,其中包括 BASIC。除了分号以外,任何其他3个部分(initialization/初始化、condition/条件判断、increment/增量计数)都可以省略。初始化、条件判断、增量计数可以是任何无关变量的有效C语句,或使用任何C数据类型包括 float。这些各种类型不寻常的for语句可能会解决一些罕见的编程问题。
 +
 
 +
例如,使用乘法的增量将生成一个等比数列:
  
 
<pre style="color:dimgray">
 
<pre style="color:dimgray">
 
for(int x = 2; x < 100; x = x * 1.5){
 
for(int x = 2; x < 100; x = x * 1.5){
println(x);
+
  println(x);
 
}
 
}
 +
</pre>
  
Generates: 2,3,4,6,9,13,19,28,42,63,94
+
生成: 2,3,4,6,9,13,19,28,42,63,94
  
Another example, fade an LED up and down with one for loop:
+
另一个示例,使用for循环 使 LED 产生渐亮渐灭的效果:
  
 +
<pre style="color:dimgray">
 
void loop()
 
void loop()
 
{
 
{

2015年8月18日 (二) 22:17的最后版本

描述


for 语句是用于重复执行在大括号内的一段代码。通常使用一个增量计数器来增加计数和终止循环。for语句用于重复性操作非常实用,经常和数组结合被用于操作数据或引脚。


for循环语句开头有3个部分:

for (initialization/初始化; condition/条件判断; increment/增量计数) {

//statement(s);
//执行语句

}


ForLoopIllustrated.png


初始化只在开始执行一次。每次执行一次循环,都会进行一次条件判断;如果为真,则执行括号内语句并增量计数,然后再次条件判断。当条件判断为假时,终止循环。


示例


// 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);
   } 
}




返回Arduino语法参考列表

更多建议和问题欢迎反馈至 YFRobot论坛