【发布时间】:2013-11-30 03:42:24
【问题描述】:
我环顾四周,他们的问题相似,但答案并没有解决我的问题。
所以,问题是 - 如果我尝试在 allegro 中加载/绘制 bmp,它会崩溃,它们与我的项目位于同一目录中,它们被正确命名,我相信问题在于 bmp 本身。如果我使用教程中的 bmp,我使用它们工作正常,但是如果我尝试创建自己的,allegro 在启动时崩溃,是否有某种预设 bmp 我可以用来创建我的精灵?我已经多次检查了我的代码,但如果我遗漏了什么,请指出:)
我的代码:
#include <allegro.h>
int main(int argc, char *argv[])
{
// Startup Stuff
allegro_init();
install_keyboard();
set_color_depth(16);
set_gfx_mode(GFX_AUTODETECT, 640, 480, 0, 0);
// Bitmap Stuff
BITMAP *pic = NULL;
pic = load_bitmap("enemy.bmp", NULL);
blit(pic, screen, 0,0,0,0,200,150);//Draw the whole bitmap to the screen at (0,0)
readkey(); // Wait for Key Press.
destroy_bitmap(pic);
return 0;
}
END_OF_MAIN();
提前致谢
【问题讨论】:
-
堆栈跟踪是什么样的?
-
@JohnSaxton 抱歉,我忘了说我是新手,我在 devcpp 上,我在哪里可以检索堆栈跟踪?
-
您应该始终检查返回值并做出相应的反应。这样你的程序就不会莫名其妙地崩溃了。
if (!pic) { /* print unable to load bitmap & quit */ }