创建窗口
#include <stdio.h> #include <stdlib.h> #include <stdint.h> #include <SDL2/SDL.h> int main(int argc, char *argv[]) { // 初始化SDL if (SDL_Init(SDL_INIT_VIDEO) < 0) { printf("SDL初始化失败: %s\n", SDL_GetError()); return -1; } // 创建窗口 SDL_Window *window = SDL_CreateWindow("图形窗口", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 800, 600, SDL_WINDOW_SHOWN); if (!window) { printf("窗口创建失败: %s\n", SDL_GetError()); SDL_Quit(); return -1; } // 创建渲染器 SDL_Renderer *renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED); if (!renderer) { printf("渲染器创建失败: %s\n", SDL_GetError()); SDL_DestroyWindow(window); SDL_Quit(); return -1; } // 渲染窗口 SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255); SDL_RenderClear(renderer); SDL_RenderPresent(renderer); // 等待退出事件 int quit = 0; SDL_Event event; while (!quit) { while (SDL_PollEvent(&event)) { if (event.type == SDL_QUIT) { quit = 1; break; } } } // 清理资源 SDL_DestroyRenderer(renderer); SDL_DestroyWindow(window); SDL_Quit(); return 0; }