読み込み用のコードは以下の通り、ヘッダー扱いです。
void fileload(void){
int f, g, h;
LoadDivGraph("Graphic/MapChip/kusa-miti.png", 5, 1, 5, 32, 32, map_chip[0]);
LoadDivGraph("Graphic/CharaChip/86ccee6ae35de3bbc86141b6782bcf2d.png", 12, 3, 4, 32, 32, chara_chip[0]);
LoadDivGraph("Graphic/CharaChip/EDGE2.png", 12, 3, 4, 32, 32, chara[4].chip);
window[0] = LoadGraph("Graphic/System/window_shadow.png");
window[1] = LoadGraph("Graphic/System/window1.png");
FILE*fp;
if ((fopen_s(&fp, "map.txt", "r")) != 0)
printf("This file cannot open \n");
else{
f = 0;
g = 0;
while (fscanf_s(fp, "%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d", &map[f][g][0], &map[f][g][1],
&map[f][g][2], &map[f][g][3], &map[f][g][4], &map[f][g][5], &map[f][g][6], &map[f][g][7],
&map[f][g][8], &map[f][g][9], &map[f][g][10], &map[f][g][11], &map[f][g][12], &map[f][g][13],
&map[f][g][14], &map[f][g][15], &map[f][g][16], &map[f][g][17], &map[f][g][18], &map[f][g][19],
&map[f][g][19]) == 20){
g++;
if (g == 15){
f = f + 1;
g = 0;
}
}
fclose(fp);
if ((fopen_s(&fp, "event.txt", "r")) != 0)
printf("This file cannot open \n");
else{
h = 0;
while (fscanf_s(fp, "%d%d%d%d%d%d%d%d%d%d%d%d%d %s%s%s", &chara_eve[h].no, &chara_eve[h].chara_no,
&chara_eve[h].pos_x, &chara_eve[h].pos_y, &chara_eve[h].map, &chara_eve[h].battle, &chara_eve[h].eve_flag,
&chara_eve[h].bgm, &chara_eve[h].face_no, &chara_eve[h].chip_vector, &chara_eve[h].flag, &chara_eve[h].kihatu,
&chara_eve[h].talk_count, chara_eve[h].kaiwa[0], chara_eve[h].kaiwa[1], chara_eve[h].kaiwa[2]) == 16){
h = h + 1;
}
fclose(fp);
}
}
}
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int){
ChangeWindowMode(TRUE), DxLib_Init(), SetDrawScreen(DX_SCREEN_BACK);
fileload();
while (ScreenFlip() == 0 && ProcessMessage() == 0 && ClearDrawScreen() == 0 && GetHitKeyStateAll(key) == 0){
draw_map();
DrawGraph(s_pos_x * 32, s_pos_y * 32, chara_chip[0][s_vector], TRUE);
if (key[KEY_INPUT_RETURN] == 1){
while (CheckHitKey(KEY_INPUT_RETURN) == 1);
event_check();
}
else{
if (key[KEY_INPUT_UP] == 1){
if (s_pos_y > 0){
s_pos_y -= 1;
vector_up();
}
else{
vector_up();
map_check();
}
}
if (key[KEY_INPUT_DOWN] == 1){
if (s_pos_y < 14){
s_pos_y += 1;
vector_down();
}
else{
vector_down();
map_check();
}
}
if (key[KEY_INPUT_RIGHT] == 1){
if (s_pos_x < 19){
s_pos_x += 1;
vector_right();
}
else{
vector_right();
map_check();
}
}
if (key[KEY_INPUT_LEFT] == 1){
if (s_pos_x > 0){
s_pos_x -= 1;
vector_left();
}
else{
vector_left();
map_check();
}
}
WaitTimer(40);
}
}
DxLib_End();
return 0;
}
初回例外が 0x00770EC4 (Dxsample.exe) で発生しました: 0xC0000005: 場所 0x00FB5000 への書き込み中にアクセス違反が発生しました。
初回例外が 0x4E931631 (Dxsample.exe) で発生しました: 0xC0000005: 場所 0x4E931631 の実行中にアクセス違反が発生しました。
初回例外が 0x4E931631 (Dxsample.exe) で発生しました: 0xC0000005: 場所 0x4E931631 の実行中にアクセス違反が発生しました。
初回例外が 0x4E931631 (Dxsample.exe) で発生しました: 0xC0000005: 場所 0x4E931631 の実行中にアクセス違反が発生しました。
初回例外が 0x4E931631 (Dxsample.exe) で発生しました: 0xC0000005: 場所 0x4E931631 の実行中にアクセス違反が発生しました。
初回例外が 0x77E48CDE (ntdll.dll) で発生しました (Dxsample.exe 内): 0xC0000005: 場所 0xFEFEFF06 の読み取り中にアクセス違反が発生しました。
初回例外が 0x4E931631 (Dxsample.exe) で発生しました: 0xC0000005: 場所 0x4E931631 の実行中にアクセス違反が発生しました。
ハンドルされない例外が 0x77E48CDE (ntdll.dll) で発生しました(Dxsample.exe 内): 0xC0000005: 場所 0xFEFEFF06 の読み取り中にアクセス違反が発生しました。
プログラム '[16740] Dxsample.exe' はコード 0 (0x0) で終了しました。
エラーの場所がいまいちわかりづらいです。16進法で読むのでしょうか?