C言語の設計ミスった危険な関数トップ10決めようぜ (215レス)
上下前次1-新
79: 2019/12/16(月)13:28 ID:ZZ8St2Js(3/3) AAS
>>72 >>73 みたいなのって
gotoの使いどころだと思うんだけだ
gotoを使わない人はどう書いてるの?
特に >>57 の答えを聞いてみたい
80: 2019/12/16(月)15:17 ID:arH1mwfY(1/13) AAS
AA省
81: 2019/12/16(月)16:34 ID:/0yHEQmX(1) AAS
outer より後に処理が続く場合は?
82(2): 2019/12/16(月)16:51 ID:arH1mwfY(2/13) AAS
AA省
83: 2019/12/16(月)16:55 ID:arH1mwfY(3/13) AAS
"短い処理"をいちいち関数にしなくて済むから、break 2とかはあってもいいが、
長い処理は関数にしてないとろくにテストできないんだからgotoなんていらない
84: 2019/12/16(月)19:03 ID:4DgO9d+i(1) AAS
じゃあ>>57もいらないね
85: 2019/12/16(月)19:09 ID:lsrBHsJG(1) AAS
gotoの基本的な使い方くらい知っておいた方が良いかと
ループを抜ける為だけに関数を分けないといけなくなるし
挙げ句の果てに言語の欠陥とか言い出す
86: 2019/12/16(月)20:06 ID:3ha1TSe5(1) AAS
今のC言語ではネストしたループから抜けるのはフラグを使うかgotoしかないからたいていgoto使ってるけどgotoなんて野蛮なものはできたら使いたくないから他の言語で実装されてるラベル付きbreakなりレベル付きbreakが欲しいって話だろ
今更gotoの基本的な使い方ガーとか言ってる奴はどんだけ低レベルなんだよw
87(1): 2019/12/16(月)20:09 ID:xr9KOlE0(1/17) AAS
あれ?
returnで抜ける為に関数に分けるんじゃなかったの?
88: 2019/12/16(月)20:21 ID:xr9KOlE0(2/17) AAS
gotoは野蛮とかいう歪んだ教育のせいで
わざわざ変数を定義したりわざわざ関数を分けたりして
わざわざ見にくいコードにしちゃう
生でポインタを扱う野蛮なC言語なんか使わないで
上品な言語を使った方が良いよ
89: 2019/12/16(月)20:28 ID:jL52ryYk(1/2) AAS
gotoじゃなくてgodowntoなら誰も文句言わなかった
90: 2019/12/16(月)20:47 ID:LjjtFzBx(1/4) AAS
自分は小規模な字句解析みたいなのでもgoto使うことがある。
ラベルで状態を表してgotoで遷移する。
goto使わなかったら状態を変数に入れて、
ループの中でswitchで場合分けするようなコードになって辛い。
91: 2019/12/16(月)20:52 ID:DbnQVwfE(1) AAS
ループの中のswitchでループを抜けるのに
gotoを使うんじゃ?
92: 2019/12/16(月)21:41 ID:wRV+mRkt(1) AAS
次の状態を返す関数ポインタでループすればいんじゃないの?
93: 2019/12/16(月)21:45 ID:jhycq5nX(1) AAS
そんな野蛮なことはしません
94: 2019/12/16(月)22:12 ID:arH1mwfY(4/13) AAS
>>87
returnで抜けるためというか、
1. gotoで抜けたい
2. 関数にするか
3. あ、そもそもコードが複雑なんだな
4. 関数にして正解だった
こんな感じかな。
gotoで抜けたいと思う=コードが複雑になってるという警鐘だと思ってる。
95: 2019/12/16(月)22:22 ID:xr9KOlE0(3/17) AAS
で>>82みたいな意味不明な関数の分け方をすると
>>57は、より複雑な記述をしたいっていう主張だし
gotoに親を殺された人の言うことは支離滅裂
理由が後付けだからそうなる
96: 2019/12/16(月)22:27 ID:arH1mwfY(5/13) AAS
> で>>82みたいな意味不明な関数の分け方をすると
なんで意味不明?
そもそもその処理に意味をもたせてから言おうよw
処理に意味をもたせると、関数にしたほうが良いと思うからさ
97: 2019/12/16(月)22:32 ID:arH1mwfY(6/13) AAS
> 理由が後付けだからそうなる
質問の方が先なのに、理由を先に言えるわけがないw
Q. 多重ループから抜けるのに、gotoは必要ですか?
A. 必要ありません。多重ループが必要になるぐらい複雑なら関数にしますから
これが普通だから、後付にはならないよね。
98: 2019/12/16(月)22:37 ID:xr9KOlE0(4/17) AAS
じゃ>>57も当然不要ですね
上下前次1-新書関写板覧索設栞歴
あと 117 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.005s