初めまして、C言語プログラムを勉強させていただいています。
まったくの初心者なのですが
龍神録プログラミングの館の13章が、
`SHOT_BULLET_MAX' : 定義されていない識別子です。
`ch_t' : 再定義されています。異なる基本型です。
とかいうのが、
沢山ででしまうのですが、
エラーが出て原因が解らず困っています。
何方か解決法を教えていただけないでしょうか?
使っているソフトはVisualC++2010ExpressEditionです。
龍神録プログラミングの館の13章について
Re: 龍神録プログラミングの館の13章について
うちじゃ、VC++ 2010 Express で、変換ウィザードが出て、デバッグしたら、ちゃんと走りました。
龍神録プログラミングの館の13章そのままじゃなくて、手を加えたところがおかしいのでは ?
>`SHOT_BULLET_MAX' : 定義されていない識別子です。
編集(E)/検索と置換(F)/クイック検索(F) で探したところ、SHOT_BULLET_MAX は、define.h で定義されてます。
define.h をインクルードしていないのでは ?
>`ch_t' : 再定義されています。異なる基本型です。
同じく、編集(E)/検索と置換(F)/クイック検索(F) で探したところ、ch_t は、struct.h で定義されてます。
struct.h が複数回インクルードされているのでは ?
エラーメッセージ自体の意味がわからないのでしょうか ?
全角空白がまぎれこんでしまったせいで、不適格なエラーメッセージがでることもありますが。
ダウンロードしなおすのが、手っ取り早いんじゃないかな。
龍神録プログラミングの館の13章そのままじゃなくて、手を加えたところがおかしいのでは ?
>`SHOT_BULLET_MAX' : 定義されていない識別子です。
編集(E)/検索と置換(F)/クイック検索(F) で探したところ、SHOT_BULLET_MAX は、define.h で定義されてます。
define.h をインクルードしていないのでは ?
>`ch_t' : 再定義されています。異なる基本型です。
同じく、編集(E)/検索と置換(F)/クイック検索(F) で探したところ、ch_t は、struct.h で定義されてます。
struct.h が複数回インクルードされているのでは ?
エラーメッセージ自体の意味がわからないのでしょうか ?
全角空白がまぎれこんでしまったせいで、不適格なエラーメッセージがでることもありますが。
ダウンロードしなおすのが、手っ取り早いんじゃないかな。
VTuber:
[香車]東上☆Aho(暎帆)☆海美
http://atassyu.php.xdomain.jp/vtuber/index.html
レスがついていないものを優先して、レスするみみ。時々、見当外れなレスしみみ。
中の人:
手提鞄あたッしュ、[MrAtassyu] 手提鞄屋魚有店
http://ameblo.jp/mratassyu/
Pixiv: 666303
Windows, Mac, Linux, Haiku, Raspbery Pi, Jetson Nano, 電子ブロック 持ち。
[香車]東上☆Aho(暎帆)☆海美
http://atassyu.php.xdomain.jp/vtuber/index.html
レスがついていないものを優先して、レスするみみ。時々、見当外れなレスしみみ。
中の人:
手提鞄あたッしュ、[MrAtassyu] 手提鞄屋魚有店
http://ameblo.jp/mratassyu/
Pixiv: 666303
Windows, Mac, Linux, Haiku, Raspbery Pi, Jetson Nano, 電子ブロック 持ち。
Re: 龍神録プログラミングの館の13章について
SHOT_BULLET_MAXについてはおそらくこれが原因なのでは?
ダウンロードしたプロジェクトではdefine.hの一番下でstruct.hをインクルードするようになっています。
#include "struct.h"の下に
//敵一匹が持つ弾の最大数
#define SHOT_BULLET_MAX 1000
などを書いてしまってはいませんか?
13章でこういう引っかかり方をする人が妙に多い気がします。
あまりよくわかっていない時は「以下を追加する」とだけ言われたら
一番上か一番下にしか追加しないからでしょう。
そのため、#include "struct.h"という文は
define.hではなく、GV.hにいれてはどうですか?
こんな風に
#include "../../../include/DxLib.h"
#include "define.h"
#include "struct.h"
#include "math.h"
移動させるときはdefine.hに最初からあるほうは忘れずに消しておいてくださいね。
ダウンロードしたプロジェクトではdefine.hの一番下でstruct.hをインクルードするようになっています。
#include "struct.h"の下に
//敵一匹が持つ弾の最大数
#define SHOT_BULLET_MAX 1000
などを書いてしまってはいませんか?
13章でこういう引っかかり方をする人が妙に多い気がします。
あまりよくわかっていない時は「以下を追加する」とだけ言われたら
一番上か一番下にしか追加しないからでしょう。
そのため、#include "struct.h"という文は
define.hではなく、GV.hにいれてはどうですか?
こんな風に
#include "../../../include/DxLib.h"
#include "define.h"
#include "struct.h"
#include "math.h"
移動させるときはdefine.hに最初からあるほうは忘れずに消しておいてくださいね。
Re: 龍神録プログラミングの館の13章について
'shot_calc': 識別子が見つかりませんでした
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
'graph_bullet': 識別子が見つかりませんでした
'引数' : 'double' から 'float' への変換です。データが失われる可能性が
あります。
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
というのが出できました。
どうしたらいいでしょう?改善策が全くわからないので助けて下さい。
後、初心者なので#include "struct.h"という文を
define.hではなく、GV.hにいれるのはどうやるのですか?
どう対処すればよいか分からないのでどなたか教えてください。
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
'graph_bullet': 識別子が見つかりませんでした
'引数' : 'double' から 'float' への変換です。データが失われる可能性が
あります。
'引数' : 'double' から 'float' への変換です。データが失われる可能性があります。
というのが出できました。
どうしたらいいでしょう?改善策が全くわからないので助けて下さい。
後、初心者なので#include "struct.h"という文を
define.hではなく、GV.hにいれるのはどうやるのですか?
どう対処すればよいか分からないのでどなたか教えてください。
Re: 龍神録プログラミングの館の13章について
すいません。
一応できましたが、何故か敵のショットが大玉の1種類しか撃ってきません。
敵にショットを撃たせてみよう。の実行結果のようになりません。
どうしたらいいでしょう?
一応できましたが、何故か敵のショットが大玉の1種類しか撃ってきません。
敵にショットを撃たせてみよう。の実行結果のようになりません。
どうしたらいいでしょう?
Re: 龍神録プログラミングの館の13章について
#include "struct.h"については書いてある通りにすればよいだけの話です。
間違ったものを保存するのが怖いのでしたら、
ソリューションのフォルダごとコピーしてバックアップするとよいです。
まあ、今後同様のミスがないのならばそのままでもよいでしょう。
doubleからfloatへの変換については警告であり、エラーではないので
今は無視しても構いません。後でそれに対する対処法が出てきます。
graph_bulletについて
ひょっとしてvoid graph_bullet(){からの部分を
graph_main()の定義よりも下に書いていませんでしたか?
ある関数を使う場合、それを使用する場所の前に定義かプロトタイプ宣言
を書かないと使えないという決まりになっています。
大玉しか出ないことについて
13章のページには読み込むエクセルファイルの変更については書いてなく、
12章のデータをそのまま使っているのであれば大玉しか出ません。
間違ったものを保存するのが怖いのでしたら、
ソリューションのフォルダごとコピーしてバックアップするとよいです。
まあ、今後同様のミスがないのならばそのままでもよいでしょう。
doubleからfloatへの変換については警告であり、エラーではないので
今は無視しても構いません。後でそれに対する対処法が出てきます。
graph_bulletについて
ひょっとしてvoid graph_bullet(){からの部分を
graph_main()の定義よりも下に書いていませんでしたか?
ある関数を使う場合、それを使用する場所の前に定義かプロトタイプ宣言
を書かないと使えないという決まりになっています。
大玉しか出ないことについて
13章のページには読み込むエクセルファイルの変更については書いてなく、
12章のデータをそのまま使っているのであれば大玉しか出ません。
- Dixq (管理人)
- 管理人
- 記事: 1662
- 登録日時: 14年前
- 住所: 北海道札幌市
- 連絡を取る:
Re: 龍神録プログラミングの館の13章について
記載が足りませんでしたね。すみません。
インクルード位置についての注意と、エクセルファイルについての記載を追加しました。
インクルード位置についての注意と、エクセルファイルについての記載を追加しました。