このエラーはどうゆう意味・・・
Posted: 2010年5月10日(月) 01:22
DXライブラリでゲームを作ろうとしてます
と、ゆうことでまずは一番簡単と思われるノベルゲームに挑戦してます
ソースはこんな感じです↓
#include "DxLib.h"
struct mystruct {
char bun[256];
int boi;
};
struct mystruct s[2];
int i,White;
char Key[256];
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
if( ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() == -1 ) return -1; //初期化処理
White=GetColor(255,255,255);//白色習得
s[0].bun = "テスト。";
s[0].boi=LoadSoundMem( "test1.wav" );
s[1].bun = "テスト2。";
s[1].boi=LoadSoundMem( "test1.wav" );
int img = LoadGraph("メッセージボックス.png");//メッセージボックス
int img2 = LoadGraph("背景.png");//背景
SetDrawScreen( DX_SCREEN_BACK );//裏画面に設定
while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll( Key ) && !Key[KEY_INPUT_ESCAPE]){
//↑メッセージ処理 ↑画面をクリア ↑キーボード入力状態取得 ↑ESCが押されていない
DrawGraph(0,0,img2,FALSE);//背景描写
DrawGraph(0, 338, img, TRUE);//メッセージボックス描写
for(i=0;i<1;i++){
DrawFormatString(10,400,s.bun,White);//文章表示
PlaySound( s.boi, DX_PLAYTYPE_BACK );//ボイス再生
if( Key[ KEY_INPUT_RETURN ] == 1 ) ;
}
ScreenFlip() ;
}
DxLib_End();
return 0;
}
これをデッバグすると
1>------ ビルド開始: プロジェクト: ゲーム作成, 構成: Debug Win32 ------
1>コンパイルしています...
1>ゲーム作成.cpp
1>c:\noberu\ゲーム作成.cpp(19) : error C2440: '=' : 'const char [9]' から 'char [256]' に変換できません。
1> この変換が可能なコンテキストはありません。
1>c:\noberu\ゲーム作成.cpp(21) : error C2440: '=' : 'const char [10]' から 'char [256]' に変換できません。
1> この変換が可能なコンテキストはありません。
1>c:\noberu\ゲーム作成.cpp(36) : error C2664: 'DxLib::DrawFormatString' : 3 番目の引数を 'char [256]' から 'int' に変換できません。(新しい機能 ; ヘルプを参照)
1> この変換が可能なコンテキストはありません。
1>c:\noberu\ゲーム作成.cpp(37) : error C2665: 'PlaySoundA' : 2 オーバーロードのどれも、すべての引数の型を変換できませんでした
1> c:\users\documents\dxlib_vc\プロジェクトに追加すべきファイル_vc用\dxlib.h(2900): 'int DxLib::PlaySoundA(const char *,int)' の可能性があります。
1> 引数リスト '(int, int)' を一致させようとしているとき
1>c:\noberu\ゲーム作成.cpp(39) : warning C4390: ';' : 制御が空の文が見つかりました。意図した記述でしょうか?
1>ビルドログは "file://c:\noberu\Debug\BuildLog.htm" に保存されました。
1>ゲーム作成 - エラー 4、警告 1
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
とゆうエラーが出てしまいます
これはどうやって解決するのですか?
何か初歩的なことですいません
あとC言語の勉強でお勧めの本があったら教えてください
と、ゆうことでまずは一番簡単と思われるノベルゲームに挑戦してます
ソースはこんな感じです↓
#include "DxLib.h"
struct mystruct {
char bun[256];
int boi;
};
struct mystruct s[2];
int i,White;
char Key[256];
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
if( ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() == -1 ) return -1; //初期化処理
White=GetColor(255,255,255);//白色習得
s[0].bun = "テスト。";
s[0].boi=LoadSoundMem( "test1.wav" );
s[1].bun = "テスト2。";
s[1].boi=LoadSoundMem( "test1.wav" );
int img = LoadGraph("メッセージボックス.png");//メッセージボックス
int img2 = LoadGraph("背景.png");//背景
SetDrawScreen( DX_SCREEN_BACK );//裏画面に設定
while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll( Key ) && !Key[KEY_INPUT_ESCAPE]){
//↑メッセージ処理 ↑画面をクリア ↑キーボード入力状態取得 ↑ESCが押されていない
DrawGraph(0,0,img2,FALSE);//背景描写
DrawGraph(0, 338, img, TRUE);//メッセージボックス描写
for(i=0;i<1;i++){
DrawFormatString(10,400,s.bun,White);//文章表示
PlaySound( s.boi, DX_PLAYTYPE_BACK );//ボイス再生
if( Key[ KEY_INPUT_RETURN ] == 1 ) ;
}
ScreenFlip() ;
}
DxLib_End();
return 0;
}
これをデッバグすると
1>------ ビルド開始: プロジェクト: ゲーム作成, 構成: Debug Win32 ------
1>コンパイルしています...
1>ゲーム作成.cpp
1>c:\noberu\ゲーム作成.cpp(19) : error C2440: '=' : 'const char [9]' から 'char [256]' に変換できません。
1> この変換が可能なコンテキストはありません。
1>c:\noberu\ゲーム作成.cpp(21) : error C2440: '=' : 'const char [10]' から 'char [256]' に変換できません。
1> この変換が可能なコンテキストはありません。
1>c:\noberu\ゲーム作成.cpp(36) : error C2664: 'DxLib::DrawFormatString' : 3 番目の引数を 'char [256]' から 'int' に変換できません。(新しい機能 ; ヘルプを参照)
1> この変換が可能なコンテキストはありません。
1>c:\noberu\ゲーム作成.cpp(37) : error C2665: 'PlaySoundA' : 2 オーバーロードのどれも、すべての引数の型を変換できませんでした
1> c:\users\documents\dxlib_vc\プロジェクトに追加すべきファイル_vc用\dxlib.h(2900): 'int DxLib::PlaySoundA(const char *,int)' の可能性があります。
1> 引数リスト '(int, int)' を一致させようとしているとき
1>c:\noberu\ゲーム作成.cpp(39) : warning C4390: ';' : 制御が空の文が見つかりました。意図した記述でしょうか?
1>ビルドログは "file://c:\noberu\Debug\BuildLog.htm" に保存されました。
1>ゲーム作成 - エラー 4、警告 1
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
とゆうエラーが出てしまいます
これはどうやって解決するのですか?
何か初歩的なことですいません
あとC言語の勉強でお勧めの本があったら教えてください