我在Code::Block
变量中遇到了SDL_Surface
的编译错误。奇怪的是,这是我第一次收到这种错误,因为我以前使用过这行代码并且它运行良好。
导致此问题的一个(具有相同问题的几个)示例代码行是:
extern SDL_Surface *screen;
产生的错误是:
expected init-declarator before "extern"|
expected `,' or `;' before "extern"|
||=== Build finished: 2 errors, 0 warnings ===|
我试图理解错误,但我不知道它是什么。有谁知道什么可能是错的?
答案 0 :(得分:0)
这是一个疯狂的猜测,因为我没有太多的工作。在SDL_Surface
之前,您是否拥有extern
所需的所有标题?
答案 1 :(得分:0)
看起来你错过了SDL_Surface
的定义。确保#include
正确的头文件中定义了SDL_Surface
。或者,如果您实际上没有使用screen
变量(即您没有访问其任何字段),则可以使用不完整类型声明它:
extern struct SDL_Surface *screen;