ページ 1 / 1
致命的なエラー・・・?
Posted: 2012年11月16日(金) 22:25
by Gluek
こんばんわ、いつもお世話になってます。Gluekです。
ゲーム制作の為にC言語を現在勉強中で、その知識を活かしてシューティングゲームを制作しようと奮起しております。
早速少しずつプログラムを組んで実行していっていたのですが、一つどうしても分からない問題が起こりました。
ビルドをしていてエラーが出て「出力」の欄でエラーの原因を突き止めようとしたら
「未解決の外部シンボル」や「fatal error」が出てきました。
いったいこれが何を指し示すかも分かりませんし、
なぜこうなったのか自分でもわけがわかりません・・・
一体どういうことなんでしょうか?
Re: 致命的なエラー・・・?
Posted: 2012年11月16日(金) 22:37
by softya(ソフト屋)
全部のエラーメッセージを貼って頂かないと答えられませんがリンクのエラーです。
原因は関数名の間違いなどで、それ以上は見てみないとなんとも言えません。
Re: 致命的なエラー・・・?
Posted: 2012年11月16日(金) 22:44
by Gluek
そのエラー文を全部表示するとこんな感じです
main.obj : error LNK2019: 未解決の外部シンボル "int__cdecl GetHitKeyStateAll_2(void)" (?GetHitStateAll_2@@YAHXZ)が関数"int__cdecl ProcessLoop(void)" (?ProcessLoop@@YAHXZ)で参照されています
C:¥Users¥dynabook¥Desktop¥GameProg¥Debug¥GameProg.exe : fatal error LNK1120: 外部参照 1 が未解決です
と表示されていました
Re: 致命的なエラー・・・?
Posted: 2012年11月16日(金) 22:44
by box
Gluek さんが書きました:
「未解決の外部シンボル」や「fatal error」が出てきました。
関数を呼び出しているところと実際の関数定義とで、
関数名が大文字・小文字を含めて1文字でも食い違っているとまずいです。
エラーメッセージに従って、修正する必要があると思います。
Re: 致命的なエラー・・・?
Posted: 2012年11月16日(金) 22:54
by softya(ソフト屋)
そうですね。
このエラーはVC++のリンカーがGetHitKeyStateAll_2()と言う関数が見当たらないと言っています。
1.名前は間違っていませんか?
2.GetHitKeyStateAll_2()の関数の実体はちゃんとありますか?
3.あと龍神録をベースにしているならkey.cppはちゃんとコンパイル・リンク対象になっていますか?
Re: 致命的なエラー・・・?
Posted: 2012年11月17日(土) 17:35
by Gluek
とりあえず現在は龍神録のプログラムをベースとしてやっています
上記二つのことがあてはまってなかったので多分3の方かと思われますが
コンパイル、リンク対象とはどこで確認できるのでしょうか・・・?
Re: 致命的なエラー・・・?
Posted: 2012年11月17日(土) 17:45
by たいちう
変な設定をしていなければ、ソリューション エクスプローラーにファイルがあればOKかと。
なければ、右クリック → 追加 → 既存の項目 から、追加してください。
Re: 致命的なエラー・・・?
Posted: 2012年11月17日(土) 22:58
by Gluek
自己解決できました、Key.cppをいろいろといじくっていたらコンパイル成功しました
Re: 致命的なエラー・・・?
Posted: 2012年11月23日(金) 12:02
by isilo
すでに解決したとは思いますが補足。
エラー文の中に、どの部分でエラーが起きているのかは書いてあります。
もしもう一度そのようなことがあったら、
まずはその部分を見直ししてみてください。