ページ 11

DXライブラリ初心者です

Posted: 2013年9月19日(木) 21:59
by j1☆☆☆m☆t
画像を表示させることはできるのですが、動かすとデバックエラーになります知恵を貸してください。

Re: DXライブラリ初心者です

Posted: 2013年9月19日(木) 22:05
by softya(ソフト屋)
ちょっと情報が足らないのでもう少し詳しくお願いします。
ソースコードと起きる問題の具体な説明(どのような操作した)が書かれているのが一番で、デバッグエラーならそのエラーコードを記載して下さい。

ソースコードの記載にはコードタグをご利用下さい。
http://dixq.net/board/board.html#k10

Re: DXライブラリ初心者です

Posted: 2013年9月19日(木) 22:22
by 質問者です

コード:



#include "DxLib.h"

int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
        ChangeWindowMode(TRUE), DxLib_Init(), SetDrawScreen( DX_SCREEN_BACK ); //ウィンドウモード変更と初期化と裏画面設定

        int x = 0;
        int Handle;     // 画像格納用ハンドル
        Handle = LoadGraph( "画像/キャラクタ00.png" ); // 画像のロード

        // while( 裏画面を表画面に反映, メッセージ処理, 画面クリア )
        while( ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0 ){

                DrawGraph( x,   100, Handle, TRUE ); //画像の描画
                DrawGraph( x/2, 200, Handle, TRUE ); //画像の描画
                DrawGraph( x/4, 300, Handle, TRUE ); //画像の描画
                x = x + 2; // xを2増やす

        }
        
        DxLib_End(); // DXライブラリ終了処理
        return 0;
}


Re: DXライブラリ初心者です

Posted: 2013年9月19日(木) 22:23
by 質問者です
出力画面?です

1>------ ビルド開始: プロジェクト: GameProg, 構成: Debug Win32 ------
1>2013/09/19 22:02:08 にビルドを開始しました。
1>InitializeBuildStatus:
1> "Debug\GameProg.unsuccessfulbuild" のタッチ タスクを実行しています。
1>ClCompile:
1> すべての出力が最新のものです。
1>ManifestResourceCompile:
1> すべての出力が最新のものです。
1>LINK : fatal error LNK1168: ファイル C:\Users\稜太郎\Desktop\GameProg\Debug\GameProg.exe を開いて書き込むことができません。
1>
1>ビルドに失敗しました。
1>
1>経過時間 00:00:00.24
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

Re: DXライブラリ初心者です

Posted: 2013年9月19日(木) 22:28
by sozai
質問者です さんが書きました:

コード:


        int x = 0;
        int Handle;     // 画像格納用ハンドル
        Handle = LoadGraph( "画像/キャラクタ00.png" ); // 画像のロード

        // while( 裏画面を表画面に反映, メッセージ処理, 画面クリア )
        while( ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0 ){

                DrawGraph( x,   100, Handle, TRUE ); //画像の描画
                DrawGraph( x/2, 200, Handle, TRUE ); //画像の描画
                DrawGraph( x/4, 300, Handle, TRUE ); //画像の描画
                x = x + 2; // xを2増やす

        }
名前はユニークで今後も使うものにしてください。
それで、エラーについてですが、原因はxが0であることではないでしょうか?
C言語で0除算はエラーになりますので。

Re: DXライブラリ初心者です

Posted: 2013年9月19日(木) 22:29
by softya(ソフト屋)
名前は無闇に変更しないようにお願いします。覚えていられないなら覚えやすく個性的な名前をお決め下さい。

エラーを見るとリンクでエラーを起こしていますので、デバッグではなくコンパイル・リンク時のビルドエラーです。
> GameProg.exe を開いて書き込むことができません。
と有りますので、前に起動したプログラムがちゃんと終了していない状況だと思います。
タスクマネージャで GameProg.exe を終了させるとビルドエラーはなくなります。

Re: DXライブラリ初心者です

Posted: 2013年9月19日(木) 22:33
by softya(ソフト屋)
sozai さんが書きました:名前はユニークで今後も使うものにしてください。
それで、エラーについてですが、原因はxが0であることではないでしょうか?
C言語で0除算はエラーになりますので。
割る方の数が0ではないので大丈夫です。
0で割ると数学的に未定義となるので、CPU(コンピュータ)的にも答えが求められないまずい状況になるのでエラーと成るのです。
「ゼロ除算 - Wikipedia」
http://ja.wikipedia.org/wiki/%E3%82%BC% ... 4%E7%AE%97

Re: DXライブラリ初心者です

Posted: 2013年9月20日(金) 18:47
by sozai
> j1☆☆☆m☆t 様
>softya様
失礼しました。