はじめまして。今回初めて質問させていただきます本庄です。
皆さんこれからどうぞよろしくお願いしますm(..)M
早速の質問ですみませんが、
10.敵を表示させてみよう(以下URL)
http://dixq.net/rp/10.html
抜き出すとここの部分ですが、
//ゲームの初期化
void ini(){
stage_count=1;
memset(&ch,0,sizeof(ch_t));//自機データの初期化
ch.x=FIELD_MAX_X/2;
ch.y=FIELD_MAX_Y*3/4;
memset(enemy,0,sizeof(enemy_t)*ENEMY_MAX);//敵データの初期化
}
赤の部分は関数の呼び出しですよね?
この関数の宣言がどこにも見当たらないのですが、どのような処理をして自機と敵を初期化
しているのでしょうか?
よろしくお願いしますm(..)m
”10.敵を表示させてみよう”での質問です。
Re:”10.敵を表示させてみよう”での質問です。
memset()関数は標準関数です。
プロトタイプは string.h memory.h で次のように宣言されています。
void *memset(void *buf, int c, size_t size);
buf が指す領域を、c で、size バイト分埋めます。
戻り値は、buf の値です。
件のコードは、それぞれ &ch, enemy を、sizeof(ch_t), sizeof(enemy_t) * ENEMY_MAX分0でクリアしてるのですね。
プロトタイプは string.h memory.h で次のように宣言されています。
void *memset(void *buf, int c, size_t size);
buf が指す領域を、c で、size バイト分埋めます。
戻り値は、buf の値です。
件のコードは、それぞれ &ch, enemy を、sizeof(ch_t), sizeof(enemy_t) * ENEMY_MAX分0でクリアしてるのですね。
Re:”10.敵を表示させてみよう”での質問です。
標準関数にそういうものがあったんですね。
すみません、その辺はまだほとんど知りませんでした。
シエルさん、へろりさん
わかりやすい回答ありがとうございますm(. .)m
今後はそのあたりを含めて勉強していきたいと思います。
ありがとうございました^^
すみません、その辺はまだほとんど知りませんでした。
シエルさん、へろりさん
わかりやすい回答ありがとうございますm(. .)m
今後はそのあたりを含めて勉強していきたいと思います。
ありがとうございました^^