【控制结构】
说明
for
语句用于重复用大括号括起来的语句块。递增计数器通常用于递增和终止循环。 for
语句可用于任何重复操作,并且通常与数组结合使用以对数据/引脚集合进行操作。
用法
for (initialization; condition; increment) {
// statement(s);
}
参数
initialization
: 首先发生一次,而且恰好发生一次。
condition
: 每次循环,condition
被测试;如果它是true
、语句块和增量被执行,然后健康)状况再次测试。当。。。的时候健康)状况变成false
,循环结束。
increment
: 每次通过循环时执行condition
是true
.
示例代码
// 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
循环比其他一些计算机语言(包括 BASIC)中的 for
循环灵活得多。尽管分号是必需的,但可以省略三个标题元素中的任何一个或全部。此外,用于初始化、条件和增量的语句可以是任何具有无关变量的有效 C++ 语句,并使用任何 C++ 数据类型,包括浮点数。这些类型的异常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 float用法及代码示例
- Arduino long用法及代码示例
- Arduino Arduino_EMBRYO_2 - setLengthXY()用法及代码示例
- Arduino ~用法及代码示例
- Arduino ArduinoBLE - bleDevice.advertisedServiceUuidCount()用法及代码示例
- Arduino const用法及代码示例
- Arduino Ethernet - server.begin()用法及代码示例
- Arduino ArduinoBLE - BLEService()用法及代码示例
- Arduino digitalWrite()用法及代码示例
- Arduino ArduinoBLE - bleCharacteristic.subscribe()用法及代码示例
- Arduino Servo - attach()用法及代码示例
- Arduino write()用法及代码示例
- Arduino Arduino_LSM9DS1 - readGyroscope()用法及代码示例
- Arduino ArduinoSound - FFTAnalyzer.input()用法及代码示例
- Arduino MKRGSM - gprs.attachGPRS()用法及代码示例
- Arduino WiFiNINA - WiFi.config()用法及代码示例
- Arduino MKRGSM - sms.read()用法及代码示例
- Arduino MKRNB - getCurrentCarrier()用法及代码示例
- Arduino Scheduler - Scheduler.startLoop()用法及代码示例
- Arduino Arduino_LSM9DS1 - magneticFieldAvailable()用法及代码示例
- Arduino MKRWAN - available()用法及代码示例
- Arduino ArduinoBLE - BLE.poll()用法及代码示例
- Arduino ArduinoBLE - bleCharacteristic.hasDescriptor()用法及代码示例
- Arduino Ethernet - EthernetUDP.parsePacket()用法及代码示例
- Arduino WiFi101 - WiFi.subnetMask()用法及代码示例
注:本文由纯净天空筛选整理自arduino.cc大神的英文原创作品 for。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。