[表示 : 全て 最新50 1-99 2chのread.cgiへ]
Update time : 05/09 20:28 / Filesize : 17 KB / Number-of Response : 67
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C言語なら俺に聞け(入門篇) Part 31



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


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++ダウンロードしてきます。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<17KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef