『カッコをつけたコードはカッコわるいのか論争』
http://el.jibun.atmarkit.co.jp/hidemi/2 ... -29fb.html
に触発されたので、アンケートをとってみようと思います。
/*
if文については、書きにくい&読みにくい ので「投票の作成」システムは使わないことにしました。
代わりと言ってはなんですが、return文の書き方についての投票を作成しました。
*/
if文などの中身が一行の場合、みなさんはどのように書いていますか?
私は
if(a==b) a+=b;
と書いています。
ところで、「 { } は省略できる」というのは誤りだったのですね。初めて知りました。
さて、上記のサイトを読んでいて気になったことがいくつか・・・。
・ { } を「カッコ」と呼ぶこと
有り得ません。気持ち悪いです。「カッコ」は " ( ) " です。私は「中括弧」又は「パーレン」と呼びます。「カッコいい・カッコわるい」のギャグに結びつけるためにわざわざそう呼んだだけだと信じたいです。
・ return 0;
理解できないことはないですが、少し気になります。私は括弧をつけて
return(0);
と書きます。returnという関数に引数を指定するイメージです。 " return 0; " だと数値だけがふわふわと浮いている印象を受けます。
そんなわけで、
・if文
・return文
について、みなさんの書き方をお答えください。
ちなみに期間は3日間です。
【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?
Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?
if(a ==0){
return true;
}
C歴一年と7ヶ月ですが、拘りは特に無く、常時上記の様に書いています。
if文も中括弧は省略しないです、見直したときにわかりづらいので。
バーレンって言葉も今更知りました。
*パーレンでしたか。。。。
return true;
}
C歴一年と7ヶ月ですが、拘りは特に無く、常時上記の様に書いています。
if文も中括弧は省略しないです、見直したときにわかりづらいので。
バーレンって言葉も今更知りました。
*パーレンでしたか。。。。
最後に編集したユーザー taketoshi on 2011年10月15日(土) 20:44 [ 編集 1 回目 ]
Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?
英語では
( ) — round brackets, open brackets, brackets (UK), or parentheses
[ ] — square brackets, closed brackets, or brackets (US)
{ } — curly brackets, definite brackets, swirly brackets, curly braces, birdie brackets, Scottish brackets, squirrelly brackets, braces, gullwings, fancy brackets, or squiggly brackets
⟨ ⟩ — angle brackets, triangular brackets, diamond brackets, tuples, or chevrons
— inequality signs, or brackets
‹ ›; « » — angular quote brackets, or guillemets
⸤ ⸥; 「 」 — corner brackets
複数の式がある場合に{ ]は付けますがメソッド(関数)の戻り値には return 0; ですね
( ) — round brackets, open brackets, brackets (UK), or parentheses
[ ] — square brackets, closed brackets, or brackets (US)
{ } — curly brackets, definite brackets, swirly brackets, curly braces, birdie brackets, Scottish brackets, squirrelly brackets, braces, gullwings, fancy brackets, or squiggly brackets
⟨ ⟩ — angle brackets, triangular brackets, diamond brackets, tuples, or chevrons
— inequality signs, or brackets
‹ ›; « » — angular quote brackets, or guillemets
⸤ ⸥; 「 」 — corner brackets
複数の式がある場合に{ ]は付けますがメソッド(関数)の戻り値には return 0; ですね
最後に編集したユーザー naohiro19 on 2011年10月23日(日) 16:45 [ 編集 1 回目 ]
RE: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?
私の場合は、
・if文の{}は省略しません。
・if-else文の{}は、else ifと並べるのを除いて、省略しません。
・return文は関数ではないので、返す式全体に括弧は付けません。
それと、パーレンは、()じゃないですかね。
私は{}を中括弧またはブレースと読んでいます。
・if文の{}は省略しません。
・if-else文の{}は、else ifと並べるのを除いて、省略しません。
・return文は関数ではないので、返す式全体に括弧は付けません。
それと、パーレンは、()じゃないですかね。
私は{}を中括弧またはブレースと読んでいます。
- bitter_fox
- 記事: 607
- 登録日時: 14年前
Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?
僕の場合は次のような感じです。
最後に編集したユーザー bitter_fox on 2011年10月16日(日) 14:12 [ 編集 1 回目 ]
Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?
if() 文全体の親和性次第です。
if() a += b; の場合はカッコを付けません。
if() a += b;
else b += a; の場合もカッコを付けません。
しかし、else に続く文が複数行の場合。
if(){
a += b;
}else{
b += a;
・・・
} の場合は、カッコを付けます。
ちなみに、return は文ですので、return (0); なんては書きません。 return 0; ですね。
そしてカッコの読みですが。
パーレンだの、ブラケットだの、ブレイスだのと、呼び方を変えるよりかは、形状名+カッコ の方が、よほどスマートです。
()は丸カッコ。 {}はにょろカッコ。 []は角カッコだし、「」はカギカッコです。
そして、( がカッコで、) はコッカです。 { はにょろカッコ }はにょろコッカです。
{}をパーレンと呼ぶのであればそれぞれ、開きパーレン・閉じパーレンなどと言うのでしょうか。 スマートじゃないですね。
また、ANSI C言語辞典 では記号一覧のページで () をパーレンと呼んでます。
事ほど左様に、カッコに固有名詞を与えると思いもよらぬ混乱を招きますので、やっぱり 形状名+(カッコ or コッカ) とするのが最もエレガントだと思います。
if() a += b; の場合はカッコを付けません。
if() a += b;
else b += a; の場合もカッコを付けません。
しかし、else に続く文が複数行の場合。
if(){
a += b;
}else{
b += a;
・・・
} の場合は、カッコを付けます。
ちなみに、return は文ですので、return (0); なんては書きません。 return 0; ですね。
そしてカッコの読みですが。
パーレンだの、ブラケットだの、ブレイスだのと、呼び方を変えるよりかは、形状名+カッコ の方が、よほどスマートです。
()は丸カッコ。 {}はにょろカッコ。 []は角カッコだし、「」はカギカッコです。
そして、( がカッコで、) はコッカです。 { はにょろカッコ }はにょろコッカです。
{}をパーレンと呼ぶのであればそれぞれ、開きパーレン・閉じパーレンなどと言うのでしょうか。 スマートじゃないですね。
また、ANSI C言語辞典 では記号一覧のページで () をパーレンと呼んでます。
事ほど左様に、カッコに固有名詞を与えると思いもよらぬ混乱を招きますので、やっぱり 形状名+(カッコ or コッカ) とするのが最もエレガントだと思います。
- MoNoQLoREATOR
- 記事: 284
- 登録日時: 14年前
- 住所: 東京
Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?
() → パーレン
{} → ブレース
でした。
おそらく「パーレン」は括弧の類の総称として使われていたものを、{}限定の呼称だと解釈したのが原因でしょう。
今まで勘違いしていたということですか私はorz
しかし、括弧と言うと () の印象が強いので、やっぱり中括弧とかブレースとか呼ぶべきだと思います。
そういえば、 [ ] は数学では大括弧と言いますが、プログラミングしてる時は私は言わないですね・・・。
あえて大括弧の部分だけを声に出して言うならば「添字枠」でしょうか。でも普通は [5] を1セットとして「添字」と読んでいますね。
そういえばelse文が出てきたときのことを考えていませんでした。
このように書きますね。
対になっているif文,else文にブレースが付いているかどうかに関わらず、中身が一行の時はブレースをつけず、中身が複数行の時はブレースを付けます。
そして、else-if文は絶対に使いません。
なんとなく気持ち悪いからです。
{} → ブレース
でした。
おそらく「パーレン」は括弧の類の総称として使われていたものを、{}限定の呼称だと解釈したのが原因でしょう。
今まで勘違いしていたということですか私はorz
しかし、括弧と言うと () の印象が強いので、やっぱり中括弧とかブレースとか呼ぶべきだと思います。
そういえば、 [ ] は数学では大括弧と言いますが、プログラミングしてる時は私は言わないですね・・・。
あえて大括弧の部分だけを声に出して言うならば「添字枠」でしょうか。でも普通は [5] を1セットとして「添字」と読んでいますね。
そういえばelse文が出てきたときのことを考えていませんでした。
このように書きますね。
対になっているif文,else文にブレースが付いているかどうかに関わらず、中身が一行の時はブレースをつけず、中身が複数行の時はブレースを付けます。
そして、else-if文は絶対に使いません。
なんとなく気持ち悪いからです。
Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?
return に括弧は付けないですね。
ifで一行で続けて書くのはreturnしか続かないときだけにしてます。
それ以外は変更する可能性を考慮してブロックで囲んでインデントしますね。
あとifやwhileやforは関数でないので、続く括弧とのあいだにスペースひとつ入れてます。
無闇に括弧付けないのはVisualBasicを使ってたのが理由にあるかもしれません。
ifで一行で続けて書くのはreturnしか続かないときだけにしてます。
それ以外は変更する可能性を考慮してブロックで囲んでインデントしますね。
あとifやwhileやforは関数でないので、続く括弧とのあいだにスペースひとつ入れてます。
無闇に括弧付けないのはVisualBasicを使ってたのが理由にあるかもしれません。
- MoNoQLoREATOR
- 記事: 284
- 登録日時: 14年前
- 住所: 東京
Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?
そういえば、 return(0); 派ですが、case文のときは必要でない限り括弧はつけませんね・・・。