サンプルコード 一覧へ戻る

MQL5サンプルコード

【MT5(MQL5)サンプルコード】Switch 演算子

スポンサーリンク / Sponsored links

MT4(MQL4)/MT5(MQL5)のSwitch 演算子

 式の値と一致する case の処理を実行する演算子。

switch(式)
 {
  case constant: operators
  case constant: operators
     ...
  default: operators
 }

一致する条件がない場合は、空振りします。

char,uchar,short,ushort,int,uint,long,ulong型、もしくは数値等を直接記載するリテラル定数が使えます。(公式ページによると定数式も使えるらしいのですが、使い方は分かりませんでした…)

MT4→MT5になっても変わらず使えます。

サンプルコード

void OnInit()  
{

   int x;
  
   x = 1;
   switch(x)
   {
      case 1:
            Print("x=1");
            break;
         
      case 2:
            Print("x=2");
            break;
      default:
            Print("xは1でも2でもありません");
            break;
   }
     
   Print("-----------------------------------");
   
   x = 2;
   switch(x)
   {
      case 1:
            Print("x=1");
            break;
         
      case 2:
            Print("x=2");
            break;
      default:
            Print("xは1でも2でもありません");
            break;
   }
   
   Print("-----------------------------------");
   
   x = 3;
   switch(x)
   {
      case 1:
            Print("x=1");
            break;
         
      case 2:
            Print("x=2");
            break;
      default:
            Print("xは1でも2でもありません");
            break;
   }


   Print("-----------------------------------");
   
   ushort y;
   
   y = 'a';
   switch(y)
   {
      case 'a':
            Print("y=a");
            break;
      case 'b':
            Print("y=b");
            break;
      default:
            Print("yはaでもbでもありません");
            break;
   }

   Print("-----------------------------------");
   
   y = 'b';
   switch(y)
   {
      case 'a':
            Print("y=a");
            break;
      case 'b':
            Print("y=b");
            break;
      default:
            Print("yはaでもbでもありません");
            break;
   }   
   
   Print("-----------------------------------");
   
   y = 'c';
   switch(y)
   {
      case 'a':
            Print("y=a");
            break;
      case 'b':
            Print("y=b");
            break;
      default:
            Print("yはaでもbでもありません");
            break;
   }

}

結果

x=1
-----------------------------------
x=2
-----------------------------------
xは1でも2でもありません
-----------------------------------
y=a
-----------------------------------
y=b
-----------------------------------
yはaでもbでもありません

コメント / Comments

タイトルとURLをコピーしました