C ++ SDL分段错误

时间:2012-05-12 15:26:54

标签: c++ debugging opengl segmentation-fault sdl

我让我的游戏工作,然后决定尝试使用以下tutorial来实现菜单。

我没有使用该教程来创建他之前创建的教程中的游戏。

每当我编译并运行程序时,它会短暂加载,然后关闭并在Process terminated with status 3 (0 minutes, 1 seconds)的构建日志中显示code::blocks

更新:我已经将pastebin链接的代码更新为现在的内容,我现在从调试器获取的错误是

Program received signal SIGSEGV, Segmentation fault.
In TTF_SizeUNICODE () (E:\game\pong\bin\Debug\SDL_ttf.dll)
At E:\game\pong\main.cpp:27

更新2:似乎我尴尬地没有安装字体。我已经安装了字体&现在,调试器到达屏幕显示的位置,字体为" Start"并且"退出"但是,在执行此操作后,程序立即冻结,没有任何错误在调试器中出现,如果我正常运行程序,它只是在显示文本后停止响应,奇怪。刚从code::blocks启动程序后强行关闭窗口后意识到,它返回:Process terminated with status -805306369 (0 minutes, 13 seconds)

更新3:解决了。

1 个答案:

答案 0 :(得分:3)

在将screen传递给showMenu之前,您没有初始化SDL_SetVideoMode(第220行)(第224行)。 AFAIK screen会返回您可以用于{{1}}的表面。