我做了一些研究之后才开始使用SDL . 我从这个教程开始http://lazyfoo.net/SDL_tutorials/lesson01/index2.php <<使用完全相同的代码和bmp图像 .
出于某种原因,当我在IDE(Microsoft visual studio)中调试并运行程序时,屏幕会加载,但屏幕上应该弹出的图片却没有 . 但是,当我去我的项目并手动运行程序时,它可以顺利完成所有工作 . 经过一番研究后发现SDL_LoadBMP()返回NULL(如果发生错误则返回NULL) . 但为什么?另外,我怎样才能看到错误究竟是什么?
2 回答
您正在尝试在正确的目录中加载位图吗?从Visual Studio启动程序时,它将从包含项目(
.vcproj
或.vcxproj
文件)的目录中的当前工作目录开始 . 确保您的路径都与该目录相关 .但是,如果通过双击Windows资源管理器中的可执行文件(默认情况下通常位于
Debug\
或Release\
子目录中)启动,则它将从该文件夹的当前工作目录开始 .可能会出现几个问题:
您是否安装了SDL_image?
您是否链接到SDL_image?
您是否在正确的文件夹中有实际的图形文件?
你在屏幕上瞎了吗?
您使用的是SDL_Flip吗?