我正在学习LazyFoo的C(不是CPP)的SDL教程,我被困在从SDL廑LoadBMP()切换到IMG廑Load()的部分。功能
SDL_Surface *load_image(char *filename) {
SDL_Surface* loadedImage = NULL;
SDL_Surface* optimizedImage = NULL;
loadedImage = SDL_LoadBMP(filename);
if(loadedImage != NULL) {
optimizedImage = SDL_DisplayFormat( loadedImage );
SDL_FreeSurface(loadedImage);
}
return optimizedImage;
}
很好的配合
background = load_image("background.bmp");
但如果我改变
loadedImage = SDL_ImageBMP(filename);
它到
loadedImage = IMG_Load(filename);
并生成/运行它触发0xc000007b错误。我很确定我安装了SDL_image.h库,因为我很小心地遵循了这些步骤。所以我的问题是:怎么了?从谷歌我只来:与.dll的东西,但-什么?我使用的是Visual Studio 2010,但它也会出现在Code::Blocks中(但在那里它不会编译)
最佳答案
获取SDL.dll
从你下载的sdl
(从http://www.libsdl.org/release/SDL-devel-1.2.15-VC.zip)并将其粘贴到可执行文件旁边。
试试lib/x86文件夹中的那个
然后删除在SDL安装过程中粘贴在System32/或System/或SysWOW64/中的任何SDL.dll文件
关于c - SDL/C IMG_Load触发0xc000007b错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13901390/