プロが教えるわが家の防犯対策術!

プログラム中の大カッコについて

C言語のプログラム中に(1)、(2)の様な大カッコ(下記参照)が存在するのですが、どの様な意味になるのでしょうか?

int main(void)
{
  ・・・・;
  ・・・・;
  {(1)
    ・・・・;
    ・・・・;
  }(2)
  ・・・・;
  ・・・・;
}

ご教授下さい。
よろしくお願い致します。

A 回答 (5件)

参考URLに変数のスコープについて書いてあります



参考URL:http://www.geocities.jp/ky_webid/c/022.html
    • good
    • 0

「複合文」です。



ちなみに、[] と {} のどちらが大括弧で、どちらが中括弧になるかは国によって異なります。
そのため、角括弧、波括弧と呼んだ方が間違いありません。
    • good
    • 0

本題とはそれた指摘ですが、



大括弧は [、] です。C言語では配列参照に使う記号。
中括弧が {、} で、これが今回の質問の記号。

http://goo.gl/wAWu
    • good
    • 0

検索キーワードは、


[C言語]+[ブロックスコープ]
だと思います。

要は、宣言した変数は、{ } で括られた中で有効だと言う事です
main()
{
int a;
a = 1;

{
int b;
// 変数 b は有効
b= a + 1;

}

// 変数 bは無効
b = a + 1; //← ここでコンパイルエラー

}

って事になります。
    • good
    • 0

forやifなどの制御構文を持たないブロックですね


私の場合は変数の有効範囲を限定したいときに使うことがあるかもしれませんがめったに使いませんね
switch構文のcaseの一部をブロック化することはたまにありますね(Cでブロックの先頭でしか変数宣言が出来ない場合)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!