Code Block Delimiter

コードブロックデリミタはスクリプトをコードブロックに区切ります。

変数は宣言されたコードブロックと、その内部のコードブロック(子ブロックや孫ブロック)でのみアクセスすることが出来ます。(変数のスコープとか変数の作用範囲と言います)

コードブロックは左中括弧「{」で始まり、右中括弧「}」で終わります。


関数、ループ(for,while,do)、構造体(struct)および条件分岐(if/else,switch/case)は全てコードブロックデリミタを使用します。

条件分岐とループは、含まれるステートメントの総数が1論理行であればコードブロックデリミタを必要としません。

(1論理行は、セミコロン1つ分の意味。コードエディタで見たときに複数行に渡っていても構いません。セミコロンの項とホワイトスペースの項も参照して下さい)

変数のスコープを定義するためだけに匿名コードブロック(ループや条件分岐などに付随しないもの)を使用することが可能です。

void main()
{ // main関数ここから

      // 匿名コードブロック。変数nはこのコードブロックだけで使用可能
     {
          int n = 13;
          PrintInteger( n );
     }

     // 変数nのスコープはここまで(これ以降は使う事が出来ない

     int x = 0;

     // ループの中身が1行の場合はコードブロックデリミタは不要(付けても良い
     while (x < 10)
          x++;

     // このループは複数のステートメントで構成される
     for (x = 10; x <= 30; x++)
     {
          PrintInteger(x);
          if (x > 25)
               PrintString("xが25を超えました");
          else
               PrintString("xは25以下です");
     }
} // main関数ここまで




author: Charles Feduke, additional contributor(s): Frank Succardi, JP team: ohtsuki
Send comments on this topic.