Skip Navigation
InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)SC
Scribbler9000 @toast.ooo
Posts 1
Comments 0

My SDL Program isn't working

So I'm making this program in SDL to just render a single window and it's not working IDK why. It compiles well no errors or anything and then when I try to run it nothing happens at all. No text appears nor a window. I tried to run my own code but it didn't work so I went to try and run the code off the website and that didn't work either.

CODE:

/This source code copyrighted by Lazy Foo' Productions 2004-2024 and may not be redistributed without written permission./

//Using SDL and standard IO #include <SDL.h> #include <stdio.h> #include <stdbool.h>

//Screen dimension constants const int SCREEN_WIDTH = 640; const int SCREEN_HEIGHT = 480;

int main( int argc, char* args[] ) { //The window we'll be rendering to SDL_Window* window = NULL;

//The surface contained by the window SDL_Surface* screenSurface = NULL;

//Initialize SDL if( SDL_Init( SDL_INIT_VIDEO ) < 0 ) { printf( "SDL could not initialize! SDL_Error: %s\n", SDL_GetError() ); } else { //Create window window = SDL_CreateWindow( "SDL Tutorial", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_SHOWN ); if( window == NULL ) { printf( "Window could not be created! SDL_Error: %s\n", SDL_GetError() ); } else { //Get window surface screenSurface = SDL_GetWindowSurface( window );

//Fill the surface white SDL_FillRect( screenSurface, NULL, SDL_MapRGB( screenSurface->format, 0xFF, 0xFF, 0xFF ) );

//Update the surface SDL_UpdateWindowSurface( window );

//Hack to get window to stay up SDL_Event e; bool quit = false; while( quit == false ){ while( SDL_PollEvent( &e ) ){ if( e.type == SDL_QUIT ) quit = true; } } } }

//Destroy window SDL_DestroyWindow( window );

//Quit SDL subsystems SDL_Quit();

return 0; }

1