- 1 名前:デフォルトの名無しさん [2008/06/27(金) 21:31:43 ]
- 言語の入門者向け解説スレです。
教えて欲しいのではなく宿題を丸投げしたいならこちらへ。 C/C++の宿題を片付けます 110代目 pc11.2ch.net/test/read.cgi/tech/1213796455/ ・C++言語はスレ違いです。 ・分からない事をなるべく詳しく書いて下さい。 ・ソースコードを晒すと答えやすくなるかもしれません。 ・開発環境や動作環境も晒すと答えが早いかもしれません。 ・質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。 前スレ C言語なら俺に聞け(入門篇) Part 30 pc11.2ch.net/test/read.cgi/tech/1213367888/ 過去スレ makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000
- 46 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 02:33:17 ]
- ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7114.c
範囲を指定しないなら、やっぱり switch はえー
- 47 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 02:38:57 ]
- >>46
なんか初めてハッシュを知った新入りのような喜びようだなw ほほえましくてイイヨーイイヨー
- 48 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 02:55:37 ]
- >>47 意味不明。自分の理論の穴を突かれて涙目なんだろ?w
>>45
- 49 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 02:59:29 ]
- >>48
ちがうちがう。 状況によってはifを使う方が速いこともあるよっていいたかっただけだ。 ついでに、条件文の書き方でも十分代わりうるということをいいたかった。 適した場面に適したコードを書くのは当たり前で、 switch(str) { case "hoge": } ってかけなくてswitchざまあなんて言い回しと同じように、 switchを使う方が良い場面においてif遅いなどというのはおろかなこと。
- 50 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 03:05:58 ]
- 初心者の頃にnyを使い始めて、ハッシュを知ってはしゃいだことのある
>>47 が可愛いよ皮良いよ
- 51 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 03:09:39 ]
- >>50
なぜny?ハッシュが何を指しているか理解してない、のか? さすがにないと思いたいんだが。 しっかり勉強しろよ?
- 52 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 03:27:59 ]
- >>47
なんか初めてハッシュを知ったny厨のような喜びようだなw ほほえましくてイイヨーイイヨー
- 53 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 04:02:02 ]
- 以上、チンパンジーのアイちゃんの自演でした。
- 54 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 04:11:30 ]
- >>47 論破されて涙目だなwwww
ハッシュなんて持ち出すなら、なおさら指定範囲内の 数値に対する話は論外になるな。無関係な話ではあるが。
- 55 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 04:26:16 ]
- >>47
茶化したつもりがハッシュなんて持ち出すから、さぁ大変。 ny厨乙。お前がそれを知って喜んでいたことの自己紹介ですか? にしても、switch はえーなぁー、をいっw
- 56 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 04:51:02 ]
- ハッシュとny厨に何の関係があるんだろう
- 57 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 07:38:10 ]
- switchが早いのでこれからは
if (a == b) { // 処理 } を switch (a == b) { case 1: // 処理 } と書くようにします!
- 58 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 08:19:48 ]
- ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7115.txt
最適化かけまくりだと0msなんで加算処理を加えてみた。 s w i t c h 蠅ー
- 59 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 10:32:34 ]
- kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7119.txt
このプログラムにおいて、最初のほうで BSTREE_NODE *deleteMinNode(BSTREE_NODE *p, BSTREE_K_TYPE *min); BSTREE_NODE *deleteRootNode(BSTREE_NODE *p, BSTREE_K_TYPE x); と書かなければいけない理由ってなんなんでしょうか? 消すとエラーが出るのに、*pや*minなどの値は変更してもエラーがでないのも意味がわかりません・・
- 60 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 10:35:18 ]
- 色々なC言語のコンパイラがありますがおすすめとかありますか?
- 61 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 10:38:36 ]
- >>59
プロトタイプ宣言かな? コンピューターは先頭から後ろにかけて順次処理してくのは 得意ですが、人間のようにソースを見渡して関数の宣言場所 と利用箇所を眺めてちゃんと定義されてるという確認ができない ある意味融通が利かない人なのです。 なので関数を使ってる箇所よりその関数が後ろに定義されてる場合 はソースの先頭付近に関数の頭の部分を定義してコンパイラに こんな関数があるよと先に結論を教えてあげます。 プロトタイプ宣言がいやなら関数を使ってるところより 先に関数を配置すればOKです
- 62 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 10:42:07 ]
- >>60
windowsPC持ってるならVC++かVC#でいいんじゃないの? Cygwinとかって環境構築ではまりそうだしね >>61の続き プロトタイプ宣言をしたくない?ようなソースはmain関数が ソースの一番最後にあって、main関数より呼ばれるその他 関数が上置くようになってます。
- 63 名前:59 mailto:sage [2008/06/28(土) 10:57:36 ]
- >>61
>>62 なるほど、ありがとうございます。 この宣言において、*minなどを違う文字に変更してもエラーが出ないのはどうしてなんでしょうか? 例えば BSTREE_NODE *deleteMinNode(BSTREE_NODE *p, BSTREE_K_TYPE *min); を BSTREE_NODE *deleteMinNode(BSTREE_NODE *a, BSTREE_K_TYPE *mn); などに変更してもエラーは出ずに実行されるのですが・・
- 64 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 11:04:44 ]
- プロトタイプ宣言は引数の数と型だけ見てるから。
- 65 名前:59 mailto:sage [2008/06/28(土) 11:08:56 ]
- なるほど、わかりました。
ありがとうございました
- 66 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 11:13:57 ]
- >>62
ありがとうございます。vc++ダウンロードしてきます。
|

|