ページ 11

10. 入力状態を取得する。 の単元

Posted: 2010年9月01日(水) 21:36
by kerotan0820
皆様お久しぶりです
久しぶりにC言語の勉強を再開しました
最初C言語を始めたころに比べ頭がやわらかくなった気がするので、久々にゲームプログラミングの館に再度挑戦しています
高校生のうちに一本ゲームを完成させるのを目標としてがんばってみたいと思います

早々なのですが、「入力状態を取得する」という題の単元(以下URL)について質問があります
http://dixq.net/g/10.html

見本のプログラムは、エンターが押されたらループを終了するとのプログラムですが、どういった仕組みでエンターが押された時にループを抜けているのですか?
( CheckHitKey( KEY_INPUT_RETURN ) == 0
エンターを押したら、 CheckHitKey( KEY_INPUT_RETURN )が1になって、 CheckHitKey( KEY_INPUT_RETURN ) == 0の条件が合わなくなるからループを抜けるということでしょうか
CheckHitKey( KEY_INPUT_RETURN )はひとつの変数なのですか?
intで宣言されているのは Whiteだけですが。

Re:10. 入力状態を取得する。 の単元

Posted: 2010年9月01日(水) 22:26
by Dixq (管理人)
> CheckHitKey( KEY_INPUT_RETURN )はひとつの変数なのですか?

いえ、変数ではありません。関数です。
関数についてはご存じでしょうか?
関数は戻り値を持たせることが出来ます。
例えば

int calc(){
return 3;
}

というcalc関数があったとすれば、この関数は3を返すので戻り値が3と同等のものとして扱えます。
このように関数には返り値を持たせることが出来ますから、キーの入力状態を調べるCheckHitKeyという関数に、0か1の返り値を持たせることで、キーの入力状態のチェックが可能となるのです。

このことが良く解らない場合、まず、C言語の基本を入門サイトなどで学ばれると良いと思います。
例えば今回の件で言えば
http://www5c.biglobe.ne.jp/~ecb/c/c00.html

左メニューの「関数」について学ばれると良いと思います。

Re:10. 入力状態を取得する。 の単元

Posted: 2010年9月01日(水) 22:29
by naohiro19
CheckHitKey関数は押されていたら1、押されていない場合は0が返ってきます。

Re:10. 入力状態を取得する。 の単元

Posted: 2010年9月01日(水) 22:34
by kerotan0820
■管理人様、naohiro19様
回答ありがとうございます
とりあえず関数について今一度学んでみたいと思います
ご指導ありがとうございます