Sketch(スケッチ)の制御文break、continue、returun、gotoについて解説します。
break
breakは、ループから抜ける時に使用します。
//Arduino Sketch Example: break
//Date: 2014.12.28
//Auther: easy labo
//Example
int i = 0;
while(i < 100){
if(expression){
//do something here
break;
}
//do something here
i++;
}
この例では、if文の条件を満たした時、whileループから抜ける事が出来ます。
continue
continueは、ループ中の処理をスキップしたい場合に記述します。
//Arduino Sketch Example: continue
//Date: 2014.12.28
//Auther: easy labo
//Example
int i = 0;
while(i < 100){
if(expression){
continue;
}
//do something here
i++;
}
この例では、if文の条件を満たした時、ループの処理が1回スキップされます。
return
retrunは、関数実行を中止し、呼び出し元の関数に戻ります。
//Arduino Sketch Example: return syntax
//Date: 2014.1.22
//Auther: easy labo
//Syntax
return;
//or
return return_value;
戻り値あり、無しで使用可能です。
//Arduino Sketch Example: return
//Date: 2014.12.28
//Auther: easy labo
//Example
int checkAnalog(){
if(analogRead(0) > 300) {
return 1;
else{
return 0;
}
}
この例では、if文の条件を満たした時、1を返し、それ以外の場合は、0を返します。
goto
gotoを記述すると、ラベルをつけたポイントへ移動できます。
//Arduino Sketch Example: goto
//Date: 2014.12.28
//Auther: easy labo
//Example
for(byte i = 0; i < 255; r++){
for(byte j = 0; j < 255; j++){
for(byte k = 0; k < 255; k++){
if (analogRead(0) > 300){
goto label_goto;
}
//do something here
}
}
}
label_goto:
この例では、if文の条件を満たすと、多重ループを抜けて、label_gotoへジャンプします。breakを使用した場合と比べて手間が省けます。
Sponsored Link