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;
}
相关推荐
Full Stack Developme2 分钟前
spring #{} 与 ${} 区别
windows·python·spring
shentuyu木木木(森)4 分钟前
单调队列 & 单调栈
数据结构·c++·算法·单调栈·单调队列
sTone873758 分钟前
C++中的引用传参和指针传参
c++
寻寻觅觅☆37 分钟前
东华OJ-基础题-120-顺序的分数(C++)
开发语言·c++·算法
云小逸38 分钟前
【Vscode插件开发教程】VSCode插件开发入门指南:从C++开发者的视角
c++·ide·vscode
汉克老师1 小时前
GESP2024年12月认证C++二级( 第二部分判断题(1-10))
c++·循环结构·分支结构·gesp二级·gesp2级
魑-魅-魍-魉1 小时前
金仓数据库(KingbaseES)V8R3 Windows 版大小写敏感设置详解
数据库·windows·金仓
Ronin3051 小时前
虚拟机数据管理模块
开发语言·c++·rabbitmq
一叶之秋14121 小时前
基石之力:掌握 C++ 继承的核心奥秘
开发语言·c++·算法
见牛羊1 小时前
CMakeLists 写法总结3.0
开发语言·c++