SDL_PollEvent 未触发

ptr*_*x01 0 c sdl

我最近才开始使用 C 语言并使用 SDL,所以我确信我搞砸了一些基本的东西,但我能找到的每个示例代码看起来都像我的,除了我的不起作用。因此,任何帮助都会受到欢迎。

#include <stdio.h>
#include <SDL.h>

int main(int argc, char *argv[])
{
SDL_Event event;
int game_running = 1;
while (game_running)
{
    while (SDL_PollEvent(&event))
    {
        switch (event.type) /* checking for event type */
        {
            case SDL_KEYDOWN:
                switch(event.key.keysym.sym)
                {
                    case SDLK_UP:
                        printf("You pressed up.\n");
                        break;
                    case SDLK_DOWN:
                        printf("You pressed down.\n");
                        break;
                }
                break;
            case SDL_KEYUP:
                printf("You stopped pressing the button.\n");
                break;
            case SDL_QUIT:
                game_running=0;
                break;
        }
    }
}
SDL_Quit();
printf("The program stopped.");

return 0;
}
Run Code Online (Sandbox Code Playgroud)

小智 5

事件处理与显示表面相关联。添加这样的内容:

SDL_Init (SDL_INIT_VIDEO);
SDL_SetVideoMode (320, 200, 8, 0);
Run Code Online (Sandbox Code Playgroud)

它会起作用的。