【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

アバター
MoNoQLoREATOR
記事: 284
登録日時: 14年前
住所: 東京

【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by MoNoQLoREATOR » 13年前

『カッコをつけたコードはカッコわるいのか論争』
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日間です。

taketoshi
記事: 222
登録日時: 14年前

Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by taketoshi » 13年前

if(a ==0){
return true;
}

C歴一年と7ヶ月ですが、拘りは特に無く、常時上記の様に書いています。
if文も中括弧は省略しないです、見直したときにわかりづらいので。
バーレンって言葉も今更知りました。

*パーレンでしたか。。。。
最後に編集したユーザー taketoshi on 2011年10月15日(土) 20:44 [ 編集 1 回目 ]

naohiro19
記事: 256
登録日時: 14年前

Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by naohiro19 » 13年前

英語では
( ) — 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 回目 ]

アバター
SAI
記事: 115
登録日時: 14年前

RE: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by SAI » 13年前

CODE:

if(a==b)
    return 0;
私はこんな感じです。{ }をつけないのは自明だからで、return (0);としないのは今まで(大した期間じゃないですが)見たことがないからです。習慣です。
パーレンと読むとは知りませんでした。今までにょろカッコまたはカッコと読んでた気がします。

アバター
a5ua
記事: 199
登録日時: 14年前

RE: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by a5ua » 13年前

私の場合は、
・if文の{}は省略しません。
・if-else文の{}は、else ifと並べるのを除いて、省略しません。
・return文は関数ではないので、返す式全体に括弧は付けません。

それと、パーレンは、()じゃないですかね。
私は{}を中括弧またはブレースと読んでいます。

アバター
bitter_fox
記事: 607
登録日時: 14年前

Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by bitter_fox » 13年前

僕の場合は次のような感じです。

CODE:

if (n > 0)
{
	return n;
}
else if (n , 「」 ∈ 集合:カッコ」的な

あ、そうそうreturn文にカッコを付ける派はcase文の場合も同様にカッコを付けるのでしょうか?
最後に編集したユーザー bitter_fox on 2011年10月16日(日) 14:12 [ 編集 1 回目 ]

アバター
へろりくしょん
記事: 92
登録日時: 14年前

Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by へろりくしょん » 13年前

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 コッカ) とするのが最もエレガントだと思います。

アバター
BEAT
記事: 4
登録日時: 14年前

Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by BEAT » 13年前

return 0;って書きますかね。あんまりこだわるところじゃないかなーと

if文は一行でも{}を使ってますが
else ifは

CODE:

if(){
・・・
}
else
if(){
・・・
}
と、if文を同じ位置にそろえたいという謎の癖があります。

アバター
MoNoQLoREATOR
記事: 284
登録日時: 14年前
住所: 東京

Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by MoNoQLoREATOR » 13年前

() → パーレン
{} → ブレース

でした。
おそらく「パーレン」は括弧の類の総称として使われていたものを、{}限定の呼称だと解釈したのが原因でしょう。
今まで勘違いしていたということですか私はorz
しかし、括弧と言うと () の印象が強いので、やっぱり中括弧とかブレースとか呼ぶべきだと思います。
そういえば、 [ ] は数学では大括弧と言いますが、プログラミングしてる時は私は言わないですね・・・。
あえて大括弧の部分だけを声に出して言うならば「添字枠」でしょうか。でも普通は [5] を1セットとして「添字」と読んでいますね。

そういえばelse文が出てきたときのことを考えていませんでした。

CODE:

if(a==b){
	if(a==c) return;
	else{
		if(a==c) return;
		else return;
	}
}
else return;
このように書きますね。
対になっているif文,else文にブレースが付いているかどうかに関わらず、中身が一行の時はブレースをつけず、中身が複数行の時はブレースを付けます。
そして、else-if文は絶対に使いません。
なんとなく気持ち悪いからです。

ISLe
記事: 2650
登録日時: 14年前

Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by ISLe » 13年前

return に括弧は付けないですね。

ifで一行で続けて書くのはreturnしか続かないときだけにしてます。
それ以外は変更する可能性を考慮してブロックで囲んでインデントしますね。

あとifやwhileやforは関数でないので、続く括弧とのあいだにスペースひとつ入れてます。

無闇に括弧付けないのはVisualBasicを使ってたのが理由にあるかもしれません。

アバター
MoNoQLoREATOR
記事: 284
登録日時: 14年前
住所: 東京

Re: 【アンケート】一行のとき if(a==b) { a+=b; } ←このパーレンはつける?

投稿記事 by MoNoQLoREATOR » 13年前

そういえば、 return(0); 派ですが、case文のときは必要でない限り括弧はつけませんね・・・。