Initialization and Shutdown
Include File(s): SDL.h
The functions in this category are used to set up SDL for use and generally have global effects in your program.
Introduction to Initialization
To begin using SDL in your program SDL_Init() must be called before most other SDL functions. The role of SDL_Init() is to properly initialize the SDL library and start each of the various subsystems requested as part of the call.
It should be noted that on some operating systems, SDL_Init() will fail if SDL_main() has not been defined as the entry point for the program. Calling SDL_SetMainReady() prior to SDL_Init() will circumvent this failure condition, however, users should be careful when calling SDL_SetMainReady() as improper initialization may cause crashes and hard to diagnose problems.
Introduction to Shut Down
SDL_Quit() should be called before an SDL application exits to safely shut down all subsystems, including the default ones.
It is not necessary to specify individual subsystems when using SDL_Quit() as it will automatically shut down all active subsystems.