#include <stdio.h>
#include <stdlib.h>
#include <SDL.h>
int SDL_main(int argc, char * argv[])
{
SDL_Window *window = NULL;
if(SDL_Init(SDL_INIT_VIDEO|SDL_INIT_AUDIO)==-1)
{
fprintf(stderr, "SDL_Init() failed\n");
exit(-1);
}
atexit(SDL_Quit);
window = SDL_CreateWindow("Window Title",
SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED,
640, 480, SDL_WINDOW_OPENGL);
if(NULL==window){
fprintf(stderr, "SDL_CreateWindow() failed\n");
exit(-1);
}
SDL_Surface * screen = SDL_GetWindowSurface(window);
SDL_Surface * image = SDL_LoadBMP("./car.bmp");
if(image==NULL)
{
fprintf(stderr, "SDL_LoadBMP() failed\n");
exit(-1);
}
//位块转移Bit Block Transfer
SDL_BlitSurface(image, NULL, screen, NULL);
SDL_FreeSurface(image);
SDL_UpdateWindowSurface(window);
SDL_ShowWindow(window);
//press ESC for exit
Uint32 exit = 0;
SDL_Event event;
while( !exit && SDL_WaitEvent(&event) )
{
switch(event.type)
{
case SDL_KEYDOWN:
if(event.key.keysym.sym == SDLK_ESCAPE)
{
exit = 1;
}
break;
default:
break;
}
}
SDL_DestroyWindow(window);
window = NULL;
return 0;
}