C++ VisualC++ 2010 アクセス違反
Posted: 2013年3月16日(土) 21:01
C++ VisualC++ 2010 DXライブラリでゲームを作っています
デバックすると閉じた後に
##.exe の 0x10003595 でハンドルされていない例外が発生しました: 0xC0000005: 場所 0xfeeeff52 を読み込み中にアクセス違反が発生しました。
と出ます。どうすれば治りますか。
Main.cpp
Kye.cpp
Kye.h
Gamen.cpp
Gamen.h
Menu.cpp
Menu.h
長文すいません
デバックすると閉じた後に
##.exe の 0x10003595 でハンドルされていない例外が発生しました: 0xC0000005: 場所 0xfeeeff52 を読み込み中にアクセス違反が発生しました。
と出ます。どうすれば治りますか。
Main.cpp
#include "DxLib.h"
#include "Gamen.h"
#include "Kye.h"
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
if( ChangeWindowMode(TRUE) != 0 ){
return 0;
}
if( DxLib_Init() != 0 ){
return 0;
}
if( SetDrawScreen( DX_SCREEN_BACK ) != 0 ){
DxLib_End();
return 0;
}
while( 1 ){
if(ScreenFlip() != 0){
break;
}
if( ProcessMessage() != 0 ){
break;
}
if( ClearDrawScreen() != 0 ){
break;
}
if( Onoff() != 0 ){
break;
}
Kyeget();
Gamen();
Pro();
}
DxLib_End();
return 0;
}
#include "DxLib.h"
#include "Gamen.h"
static int Pad;
static int get[28];
void Kyeget(){
Pad = GetJoypadInputState( DX_INPUT_KEY_PAD1 );
for(int i = 0; i<28; i++){
if( Pad & (1<<i) ){
get[i]++;
}else {
get[i] = 0;
}
}
}
int Kye( int date ){
return get[date];
}
#include "DxLib.h"
#include "Gamen.h"
#include "Kye.h"
#include "Menu.h"
static FLGs Flg = FLG_Menu;
static int onoff = 0;
void Gamen(){
switch( Flg ){
case FLG_Menu:
Menu_Ga();
break;
case FLG_Game:
break;
case FLG_Sti:
break;
case FLG_Date:
break;
}
}
void Pro(){
switch( Flg ){
case FLG_Menu:
Menu_Pro();
break;
case FLG_Game:
break;
case FLG_Sti:
break;
case FLG_Date:
break;
}
}
void Hensin( FLGs tugi ){
Flg = tugi;
}
void Off(){
onoff = 1;
}
int Onoff(){
return onoff;
}
typedef enum {
FLG_Menu, //メニュー画面
FLG_Game, //ゲーム画面
FLG_Sti, //設定画面
FLG_Date,
} FLGs ;
void Gamen();
void Pro();
void Hensin( FLGs tugi );
void Off();
int Onoff();
#include "DxLib.h"
#include "Gamen.h"
#include "Kye.h"
static int siy = 100;
static int se = LoadSoundMem("sozai/sentaku.ogg");
void Menu_syo(){
siy = 100;
}
void Menu_Ga(){
DrawString( 150 , 100 , "ゲームスタート" , GetColor( 255 , 255 , 255 ) );
DrawString( 150 , 150 , "おまけ" , GetColor( 255 , 255 , 255 ) );
DrawString( 150 , 200 , "ヘルプ" , GetColor( 255 , 255 , 255 ) );
DrawString( 150 , 250 , "コンフィグ" , GetColor( 255 , 255 , 255 ) );
DrawString( 150 , 300 , "終了" , GetColor( 255 , 255 , 255 ) );
DrawString( 120 , siy , "■" , GetColor( 255 , 255 , 255 ) );
}
void Menu_Pro(){
if(siy != 300 && Kye(0) == 1){
siy += 50;
PlaySoundMem( se, DX_PLAYTYPE_BACK );
}else if(siy == 300 && Kye(0) == 1){
siy = 100;
PlaySoundMem( se, DX_PLAYTYPE_BACK );
}
if(siy != 100 && Kye(3) == 1){
siy -= 50;
PlaySoundMem( se, DX_PLAYTYPE_BACK );
}else if(siy == 100 && Kye(3) == 1){
siy = 300;
PlaySoundMem( se, DX_PLAYTYPE_BACK );
}
if(Kye(4) == 1){
switch( siy ){
case 100:
Off();
break;
case 150:
Off();
break;
case 200:
Off();
break;
case 250:
Off();
break;
case 300:
Off();
break;
}
}
}