龍神録の4キャラ描画しようをプログラミングをしていたら以下のエラーがでました。
エラー 3 error LNK2019: 未解決の外部シンボル "int __cdecl CheckStateKey(unsigned char)" (?CheckStateKey@@YAHE@Z) が関数 _WinMain@16 で参照されました。 C:\Users\coron\Desktop\project\1章\main.obj RyuJin
エラー 2 error LNK2019: 未解決の外部シンボル "int __cdecl GetHitKeyStateAll_2(void)" (?GetHitKeyStateAll_2@@YAHXZ) が関数 "int __cdecl ProcessLoop(void)" (?ProcessLoop@@YAHXZ) で参照されました。 C:\Users\coron\Desktop\project\1章\main.obj RyuJin
警告 1 warning C4244: '引数' : 'double' から 'float' への変換です。データが失われる可能性があります。 c:\users\coron\desktop\project\1章\mydat\source\graph.cpp 7 1 RyuJin
サンプルコードと比べてみてもどこが間違っているかわかりませんでした。
よろしくお願いします。
龍神録のエラー
Re: 龍神録のエラー
struct.h
graph.cpp
load.cpp
main.cpp
よろしくお願いします。
typedef struct{
int flag;
int cnt;
int power;
int point;
int score;
int num;
int mutekicnt;
int shot_mode;
int money;
int img;
int slow;
double x, y;
}ch_t;
#include "../include/GV.h"
extern ch_t ch;
extern int img_ch[2][12];
void graph_ch(){
DrawRotaGraphF(ch.x, ch.y, 1.0f, 0.0f, img_ch[0][ch.img], TRUE);
}
void graph_main(){
graph_ch();
}
#include "../include/GV.h"
extern int img_ch[2][12];
void Load(){
LoadDivGraph("../dat/img/char/0.png", 12, 4, 3, 73, 73, img_ch[0]);
}
#define GLOBAL_INSTANCE
#include "../include/GV.h"
extern int GetHitKeyStateAll_2();
extern int CheckStateKey(unsigned char Handle);
extern void Load();
extern void graph_main();
int img_ch[2][12];
ch_t ch;
int ProcessLoop(){
if(ProcessMessage() != 0) return -1;
if(ClearDrawScreen() != 0) return -1;
GetHitKeyStateAll_2();
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lmCmdLine, int nCmdShow){
ChangeWindowMode(TRUE);
if(DxLib_Init() == -1 || SetDrawScreen(DX_SCREEN_BACK) != 0) return -1;
Load();
while(ProcessLoop() == 0){
graph_main();
if(CheckStateKey(KEY_INPUT_ESCAPE) == 1) break;
ScreenFlip();
}
DxLib_End();
return 0;
}
Re: 龍神録のエラー
extern int GetHitKeyStateAll_2();
extern int CheckStateKey(unsigned char Handle);
この2つのファイルは別のところにあるよと宣言しているのですが、LINKのときにどこにもないよと
エラーメッセージは言ってます。
元のプログラムの場合は、key.cppにあるわけですが、あなたのにはこのファイルがないのではないですか。
extern int CheckStateKey(unsigned char Handle);
この2つのファイルは別のところにあるよと宣言しているのですが、LINKのときにどこにもないよと
エラーメッセージは言ってます。
元のプログラムの場合は、key.cppにあるわけですが、あなたのにはこのファイルがないのではないですか。
non
Re: 龍神録のエラー
extern int GetHitKeyStateAll_2();モリ さんが書きました: main.cppよろしくお願いします。#define GLOBAL_INSTANCE #include "../include/GV.h" extern int GetHitKeyStateAll_2(); extern int CheckStateKey(unsigned char Handle); extern void Load(); extern void graph_main(); int img_ch[2][12]; ch_t ch; int ProcessLoop(){ if(ProcessMessage() != 0) return -1; if(ClearDrawScreen() != 0) return -1; GetHitKeyStateAll_2(); return 0; } int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lmCmdLine, int nCmdShow){ ChangeWindowMode(TRUE); if(DxLib_Init() == -1 || SetDrawScreen(DX_SCREEN_BACK) != 0) return -1; Load(); while(ProcessLoop() == 0){ graph_main(); if(CheckStateKey(KEY_INPUT_ESCAPE) == 1) break; ScreenFlip(); } DxLib_End(); return 0; }
extern int CheckStateKey(unsigned char Handle);
の2つがどこにも書いてない(=実体がない)事が原因です。
初心者です