第四回-01 文の構造


コードブロック

これまでの演習で気がついた人も多いだろうが、C/C++ ではプログラムは 「{」と「}」 (中かっこ) で括られたまとまりを単位として行う。
このひとまとまりのことをコードブロックという。

例えば、「第一回-03 初めての C/C++ プログラミング(コンソールアプリケーション編)」にて記述してもらったプログラムでは、
プログラム全体 (main 関数) が以下のように 「{」と「}」 で括られていた。



また、前回学んだ画像処理プログラミングにおいても、記述したプログラム部は下記のようにコードブロックに括られていた。
この場合、二つのコードブロック (赤と青) が入れ子構造になっていたことに注意しよう。



コードブロックの考え方がここで大事なのは、 宣言した変数が有効なのはそのコードブロック内だからである。

例えば、下の例は「int 型の変数 x の値を表示する」コンソールアプリケーションであるが、
ここで定義した x はコードブロック内、すなわち赤い四角の中でのみ通用する。



下の例は、画像処理アプリケーションの例である。
入力画像のピクセル値 (inImage[index(i,j) + 0]など) を一旦変数 blue/green/red に格納し、それを改めて出力画像に代入している。
ここで定義した変数 blue/green/red は最も内側のコードブロック内、すなわち青い四角の中でのみ通用する。




C/C++ ではプログラムで記述する命令一つ一つのことをという。
Visual Basic では文を改行で区切っていたが、C/C++ では文をセミコロン ( ; )で区切る

だから、1行に複数の文をセミコロンで区切って書いて良いし、

x = 1; y = 5; z = 3;

あるいは、一つの文を複数行にまたがって記述しても構わない。

x = ( imImage[index(i,j) + 0]
     +imImage[index(i,j) + 1]
     +imImage[index(i,j) + 2] )/3 ;   // 3つの数の平均値の計算を3行に渡って記述




←第三回課題第四回-02 C/C++ における演算子→

非情報系学生のための C/C++ 入門に戻る