【问题标题】:Extern compile error with SDL_SurfaceSDL_Surface 的外部编译错误
【发布时间】:2009-04-12 04:30:40
【问题描述】:

我在Code::Block 中遇到SDL_Surface 变量的编译错误。奇怪的是,这是我第一次收到这种错误,因为我之前使用过这行代码,并且运行良好。

导致此问题的一个(几个具有相同问题的)示例代码行是:

extern SDL_Surface *screen;

产生的错误是这样的:

expected init-declarator before "extern"|
expected `,' or `;' before "extern"|

||=== Build finished: 2 errors, 0 warnings ===|

我试图理解错误,但我不知道它是什么。有谁知道可能出了什么问题?

【问题讨论】:

    标签: sdl extern compiler-errors


    【解决方案1】:

    这是一个疯狂的猜测,因为我没有太多工作要做。在extern 之前,您是否拥有SDL_Surface 所需的所有标头?

    【讨论】:

    • 是的,头文件是#include "SDL.h",我在之前的项目中使用过这一行
    • @Anoymonous:你提到了多个问题。如果这不是您遇到的第一个错误,请尝试修复此错误之前的错误。
    【解决方案2】:

    您似乎缺少SDL_Surface 的定义。确保#include 定义了SDL_Surface 的正确头文件。或者,如果您实际上没有使用 screen 变量(即您没有访问它的任何字段),您可以使用 不完整类型 声明它:

    extern struct SDL_Surface *screen;
    

    【讨论】:

      猜你喜欢
      • 2015-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多