エラーがよくわかりません

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
アップルミスト
記事: 21
登録日時: 13年前

エラーがよくわかりません

#1

投稿記事 by アップルミスト » 12年前

弾を発射する段階でつまづきました。

http://firestorage.jp/download/969d7da6 ... 2c3b4c66fa
こちらで見て頂ければと思います。

構造体がなにか間違っているらしい(?)のですが、自分ではどこが間違っているのかいくら見直してもわかりません。
ご指摘頂ければと思います。

上下左右→上下左右移動
Z→弾発射
敵は今のところ固定
左のHPの表示は飾りです

開発環境は
Windows Vista
Visual C++
DXライブラリ
です

アバター
Tatu
記事: 445
登録日時: 14年前
住所: 北海道

Re: エラーがよくわかりません

#2

投稿記事 by Tatu » 12年前

ダウンロードしてコンパイルしてみましたがエラーは出ませんでした。
また、動作も特に不自然な感じはしませんでした。弾も出ています。
SS.png
SS.png (53.68 KiB) 閲覧数: 5858 回
構造体が間違っているらしいというのはどうしてですか?
作っているときにエラーが出たのならエラーの出ているものを
アップロードし、どんなエラーが出ているのかを説明してもらわないと
何が問題なのかを調べることができません。

いったい何を聞きたいのですか?それがわからないと誰も回答できません。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: エラーがよくわかりません

#3

投稿記事 by softya(ソフト屋) » 12年前

弾は発射されているように見えますので、問題点が良く分かりません。
どういう問題か具体的に説明をお願いします。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アップルミスト
記事: 21
登録日時: 13年前

Re: エラーがよくわかりません

#4

投稿記事 by アップルミスト » 12年前

自分で別の場所にダウンロードして解凍したらできました・・・

じゃあもともとの場所でこんなエラーがでてしまったのですが、これはなんでしょう?

1>------ ビルド開始: プロジェクト: overarmored, 構成: Debug Win32 ------
1>initial.obj : error LNK2001: 外部シンボル ""struct SHOT_t (* PlayerShot)[15]" (?PlayerShot@@3PAY0P@USHOT_t@@A)" は未解決です。
1>player.obj : error LNK2019: 未解決の外部シンボル "struct SHOT_t (* PlayerShot)[15]" (?PlayerShot@@3PAY0P@USHOT_t@@A) が関数 "void __cdecl PlayerControl(void)" (?PlayerControl@@YAXXZ) で参照されました。
1>C:\Users\Huy\documents\visual studio 2010\Projects\overarmored\Debug\overarmored.exe : fatal error LNK1120: 外部参照 1 が未解決です。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: エラーがよくわかりません

#5

投稿記事 by softya(ソフト屋) » 12年前

弾丸オネエ さんが書きました:自分で別の場所にダウンロードして解凍したらできました・・・

じゃあもともとの場所でこんなエラーがでてしまったのですが、これはなんでしょう?

1>------ ビルド開始: プロジェクト: overarmored, 構成: Debug Win32 ------
1>initial.obj : error LNK2001: 外部シンボル ""struct SHOT_t (* PlayerShot)[15]" (?PlayerShot@@3PAY0P@USHOT_t@@A)" は未解決です。
1>player.obj : error LNK2019: 未解決の外部シンボル "struct SHOT_t (* PlayerShot)[15]" (?PlayerShot@@3PAY0P@USHOT_t@@A) が関数 "void __cdecl PlayerControl(void)" (?PlayerControl@@YAXXZ) で参照されました。
1>C:\Users\Huy\documents\visual studio 2010\Projects\overarmored\Debug\overarmored.exe : fatal error LNK1120: 外部参照 1 が未解決です。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
ソリューションのリビルドをしてみてもらえますか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

赤鬼
記事: 58
登録日時: 13年前

Re: エラーがよくわかりません

#6

投稿記事 by 赤鬼 » 12年前

よく、この掲示板を見て思うのですが、コンパイルエラーやリンクエラーならエラーコードをちゃんと張りましょう。
エラーコード無しで分かるのはエスパー位です。

コード:

typedef struct{
	double x,y;
	int flag;
}SHOT_t;
SHOT_t PlayerShot[PLAYER_MAX_SHOT1][PLAYER_MAX_SHOT2];
がないか、コンパイル時のコンパイラの最適化の際に問題があった可能性があります。
上記のがグローバル空間に定義されているなら(extern.h だと思いますが)もう一度リビルドされてみてはどうでしょうか?

アップルミスト
記事: 21
登録日時: 13年前

Re: エラーがよくわかりません

#7

投稿記事 by アップルミスト » 12年前

申し訳ないのですが、リビルドの仕方を教えていただけませんか?

赤鬼
記事: 58
登録日時: 13年前

Re: エラーがよくわかりません

#8

投稿記事 by 赤鬼 » 12年前

弾丸オネエ さんが書きました:申し訳ないのですが、リビルドの仕方を教えていただけませんか?
環境によりますがVC2010なら上の方に有るメニューバーの"ビルド"の中に"ソリューションのリビルド"と言うのを選択して出来ます。
CTRL+ALT+F7キーでも出来ます。

アップルミスト
記事: 21
登録日時: 13年前

Re: エラーがよくわかりません

#9

投稿記事 by アップルミスト » 12年前

メニューバーになかったので困ってしまいましたが、キーでできました!

リビルドをしたところ、エラーが発生しなくなりました。
ありがとうございます。


質問が多くなってしまうのですが、こういうのはなにに注意すればいいのでしょう?

赤鬼
記事: 58
登録日時: 13年前

Re: エラーがよくわかりません

#10

投稿記事 by 赤鬼 » 12年前

弾丸オネエ さんが書きました:メニューバーになかったので困ってしまいましたが、キーでできました!

リビルドをしたところ、エラーが発生しなくなりました。
ありがとうございます。


質問が多くなってしまうのですが、こういうのはなにに注意すればいいのでしょう?
そう言う場ですから余り気にしなくて良いかと思います(笑)。私も良く逸れますし(おぃ
話題が変わるようなら、別に立てれば良いと思います。

コンパイラの不調は予期出来ない場合が多いので、あれ?おっかしいなぁ・・・って思ったときはリビルドするのが良いと思います。
2~3やっても駄目な場合は、コードが間違ってると思って下さい。
あと、出来るだけ不要な常駐ソフトを切ったり、メモリに余裕を持って下さい。

また、分割コンパイルに付いて学べば分かると思いますが、LINKエラーはたいていうっかりミスが多いです。宣言忘れたり、定義忘れたり。
うっかりミスをしていないのにエラーが出る場合は、コンパイラの不調を疑って下さい。

アップルミスト
記事: 21
登録日時: 13年前

Re: エラーがよくわかりません

#11

投稿記事 by アップルミスト » 12年前

わかりました!

こんな夜遅くまで付き合ってもらい、わかりやすいアドバイスもしてくださってありがとうございました

おやすみなさい^^
いや、まだ夜はこれからなのか・・・?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: エラーがよくわかりません

#12

投稿記事 by softya(ソフト屋) » 12年前

弾丸オネエ さんが書きました:メニューバーになかったので困ってしまいましたが、キーでできました!

リビルドをしたところ、エラーが発生しなくなりました。
ありがとうございます。


質問が多くなってしまうのですが、こういうのはなにに注意すればいいのでしょう?
こんな所でしょうか。
・コンパイル中に変更しない。
・ソリューションエクスプローラに必ずヘッダとソースは登録する。
・たまにリビルドする。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

閉鎖

“C言語何でも質問掲示板” へ戻る