検索結果 12 件
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタを理解する
- 返信数: 100
- 閲覧数: 40162
Re: ポインタを理解する
>3D_3Dさん なんだか回答の対応ばかりで受け身になってしまったような気がします。 なのでソフト屋さんも言いっているように方針を決めて状況を整理したほうがいいと思います。 今後どの勉強方法で行くのかは、3D_3Dさんに決めていただきたいと思います。 なので、とりあえず3D_3Dさんの意見を待ちたいです。 【補足】 私はCASL2アセンブラで根本から理解するという道も検討しておりました。 遠回りなんですけどね。 自分としては、もうすこし勉強して、どうしても理解できないようならばパターンで覚えようと考えております。 今はもう少しポインタを勉強したいと思います。 この返信だけでは不十分な感じもしま...
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタを理解する
- 返信数: 100
- 閲覧数: 40162
Re: ポインタを理解する
いろいろな方たちが説明してくれていますが それぞれに異なった方針を持っている人もいますので、ごちゃごちゃしてしまう場合は 違う方の説明を聞くときはほかの方の説明を半分ぐらい忘れた状態で聞くといいと思います。 (わからないことが残っても一旦理解したらそのあと質問すればいいので) 文法の面からひとこと言わせてもらいます。 「宣言の時」と「そうじゃない時」を分けて考えるとわかりやすいかもしれません //////////////////////////////// //宣言の時 int *p; //宣言の時は'*'を付ける //////////////////////////////// //そうじゃ...
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
Re: switchでループを抜ける方法
すいません。編集しときました。
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
Re: switchでループを抜ける方法
すいません。関数ポインタやクラスはまだ全然知らないのでぼくは何も言えません。
なのでこのへんでまとめにさせてもらいます。
*C言語で 無限ループ+switch を脱出する方法*
(僕の知識が足りない部分は不適切になると思い書きませんでした)
そもそも 無限ループ+switch文 というのがアレ とのご指摘も頂きました。
皆様、数多くの内容の濃い回答をありがとうございました。
なのでこのへんでまとめにさせてもらいます。
*C言語で 無限ループ+switch を脱出する方法*
- フラグ
- goto文
- 関数化してreturn
- 処理テーブル方式
- 連続でif else
(僕の知識が足りない部分は不適切になると思い書きませんでした)
そもそも 無限ループ+switch文 というのがアレ とのご指摘も頂きました。
皆様、数多くの内容の濃い回答をありがとうございました。
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
Re: switchでループを抜ける方法
なるほど、こういうことだったのですね。
状況によってだとは思いますがこの処理テーブル方式ではコードが大きくなってくると見難くなりますよね。(パターンの数とか)
そうなってくるとやはりコードを書く頻度というのは
return方式 > 処理テーブル方式
となるのでしょうか?
それともコードが醜くなるといったことはないのでしょうか?
状況によってだとは思いますがこの処理テーブル方式ではコードが大きくなってくると見難くなりますよね。(パターンの数とか)
そうなってくるとやはりコードを書く頻度というのは
return方式 > 処理テーブル方式
となるのでしょうか?
それともコードが醜くなるといったことはないのでしょうか?
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
Re: switchでループを抜ける方法
すみません。少し難しくてよくわからないです。softya(ソフト屋) さんが書きました:処理テーブル方式は、わざわざフラグを立てなくてもテーブル自体がフラグやら状態のような役目を持つのでループを抜けるという状態をテーブルが持っていれば良いという話です。
例えばコードでしたらどういった書き方が処理テーブル方式に当たるのでしょうか?
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
Re: switchでループを抜ける方法
あの、すいません。returnは分かるんですが処理テーブル方式ってどういうことでしょうか?ただ、私なら大抵はreturnに成る組み方にするか、処理テーブル方式にしているみたいで、error処理goto以外は無意識には避けている様です。
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
Re: switchでループを抜ける方法
確かに裏ワザにこだわって可読性が低下したら本末転倒ですもんね。
今まではフラグしか使って来なかったのでreturnというのは新鮮でした。
しかしどうにもgotoはつかってはいけないというイメージが僕の中では強いんですが
みなさんはどういう状況に陥った時にgotoを使いますか?
それとも、意地でもgotoは使いませんか?
今まではフラグしか使って来なかったのでreturnというのは新鮮でした。
しかしどうにもgotoはつかってはいけないというイメージが僕の中では強いんですが
みなさんはどういう状況に陥った時にgotoを使いますか?
それとも、意地でもgotoは使いませんか?
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
Re: switchでループを抜ける方法
関数ですか、その発想はなかったです。
C言語にもさっきあげてくださったJAVAのような機能はないですよね・・・
と言うかそのJAVAもgotoと似たような機能ですが
C言語にもさっきあげてくださったJAVAのような機能はないですよね・・・
と言うかそのJAVAもgotoと似たような機能ですが
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
Re: switchでループを抜ける方法
やっぱりC言語ではフラグを使ったりgotoを使ったりするしかないのでしょうか
何か他に裏技的な何かみたいなものはないものでしょうか?
何か他に裏技的な何かみたいなものはないものでしょうか?
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
- 10年前
- フォーラム: C言語何でも質問掲示板
- トピック: switchでループを抜ける方法
- 返信数: 23
- 閲覧数: 25316
switchでループを抜ける方法
例えばwhile文で無限ループをしている時にif文でbreakすれば抜けられますが、
switch文をつかったときはbreakでも抜けられないですよね。
そんな時はフラグを使うなんていう手も思いつきますが
みなさんはこういう時には他にどういう手段を持って乗り越えていますか?
switch文をつかったときはbreakでも抜けられないですよね。
そんな時はフラグを使うなんていう手も思いつきますが
みなさんはこういう時には他にどういう手段を持って乗り越えていますか?