トップ  >  MQL4リファレンス  >  基本  >  処理  >  switch処理
スポンサーリンク
検索

↑の検索エンジンが表示されない人は、
↓の古い検索エンジンを使用して下さい。
カスタム検索
MQL4リファレンスツリー
switch処理


式の値と全てのcaseの定数と比較し、一致する処理を行います。
caseの定数は整数定数、リテラル定数が使用出来ます。
caseの定数に変数又は関数の呼び出しは使用出来ません。
switchの式は整数型である必要があります。


書式:
switch(式) {
 case 定数: 処理1;
 case 定数: 処理2;

 …
 
 default: 処理3;
}




caseの定数に一致する値が無い場合、defaultラベルの処理が実行されます。
deaultは必ずしも最後に書く必要はありません。
またdefaultは省略する事も可能です。

caseの定数に一致せず、defaultが無い場合は何も処理されません。


case文と定数はラベルです。
複数のラベルが有る場合、break処理に到達するまで処理が実行されます。

サンプルソース:

ushort tmp_char;
tmp_char = 'A';

switch(tmp_char){

   case 'A':
      Print("A");
      break;

   case 'B':
   case 'C':
      Print("BまたはC");
      break;

   default:
      Print("A,B,C以外");
      break;
}
 
// default位置が最後以外の例

int tmp_int;
tmp_int = 4;

switch(tmp_int) {
    case 1:
        Print("1");
        break;

    default:
        Print("1,2,3以外");    // tmp_intが1,2,3以外の時に表示される
        break;

    case 2:
        Print("2");            // tmp_intが2の時に表示される
        break;

    case 3:
        Print("3");
        break;
}

// break無しの例
tmp_int = 1;
switch(tmp_int) {
    case 1:
        Print("1");             // tmp_intが1の時に表示される
    case 2:
        Print("2");             // tmp_intが1又は2の時に表示される
        break;

    case 3:
        Print("3");
        break;

    default:
        Print("1,2,3以外");
        break;
        
    // tmp_intが1の時は、1と2が表示される
    // tmp_intが2の時は、2のみが表示される
}




スポンサーリンク
スポンサーリンク


Copyright ©2015 MT4でEA自作しちゃお~ All Rights Reserved.


Top

inserted by FC2 system