Windows下SDL2创建最简单的一个窗口

先看运行效果

再上代码:

复制代码
#include <stdio.h>
#include "SDL.h"

int main(int argc, char* argv[]) 
{
    // 初始化SDL视频子系统
    if (SDL_Init(SDL_INIT_VIDEO) == -1)
    {
        printf("Error: %s\n", SDL_GetError());
        return -1;
    } 

    // 创建一个窗口
    SDL_Window *window = SDL_CreateWindow("My", 100, 100, 500, 500, SDL_WINDOW_SHOWN);

    // 检查窗口是否成功创建
    if (!window)
    {
        printf("Error: %s\n", SDL_GetError());
        return -1;
    }

    // 获取窗口的表面对象
    SDL_Surface *surface = SDL_GetWindowSurface(window);

    // 在表面对象上绘制一个红色矩形
    SDL_FillRect(surface, NULL, SDL_MapRGB(surface->format, 255, 0, 0));

    // 更新窗口表面以显示绘制的内容
    SDL_UpdateWindowSurface(window);

    // 延迟3秒,以便用户可以看到窗口
    SDL_Delay(3000);
 
    // 销毁窗口并退出SDL
    SDL_DestroyWindow(window);
    SDL_Quit();

    return 0;
}
相关推荐
wangnaisheng14 分钟前
Intel IPP 图像处理相关函数
c++·c#·图像
hetao173383716 分钟前
2025-12-25~26 hetao1733837的刷题记录
c++·笔记·算法
你的冰西瓜19 分钟前
C++中的forward_list容器详解
开发语言·c++·stl·list
无垠的广袤27 分钟前
【FPB-RA6E2 开发板】Zephyr 串口打印 DHT11 温湿度
c++·单片机·串口通信·开发板·瑞萨·传感器·dht11
Tandy12356_1 小时前
手写TCP/IP协议——实现ping的响应
c语言·网络·c++·网络协议·tcp/ip·计算机网络
CoderCodingNo1 小时前
【GESP】C++五级真题(数论、埃氏筛思想考点) luogu-B3969 [GESP202403 五级] B-smooth 数
开发语言·c++·算法
历程里程碑1 小时前
破解三数之和:双指针高效解法
c语言·数据结构·c++·经验分享·算法·leetcode·排序算法
Vect__1 小时前
25.12.27 算法日记——双指针
c++·算法
wangchen_01 小时前
C++<fstream> 深度解析:文件 I/O 全指南
开发语言·前端·c++
行稳方能走远1 小时前
Android C++ 学习笔记
android·c++