SDL_Thread的存储大小未知?

时间:2014-03-26 04:18:45

标签: c multithreading sdl sdl-2

当我尝试编译时:

#include <SDL/SDL.h>
#include "SDL_thread.h"
int main(void) {    
    SDL_Thread athread; 
    return 0;
}

使用:

gcc SDL_Thread_test.c -o SDL_Thread_test `sdl2-config --cflags --libs` -lSDL

我明白了:

error: storage size of ‘athread’ isn’t known
  SDL_Thread athread;
             ^

也许还有其他我需要的东西#include?

1 个答案:

答案 0 :(得分:2)

您无法创建SDL_thread结构。结构信息是私有的,编译器不知道。

SDL_Thread API只要求您使用指向SDL_Thread的指针,您可以声明它。

SDL_Thread* thread ;    //note the pointer
thread = SDL_CreateThread(int (*fn)(void *), void *data);

您永远不需要直接使用结构。