SDL_GetKeyState -- Get a snapshot of the current keyboard state
#include "SDL.h" Uint8 *SDL_GetKeyState(int *numkeys);
Gets a snapshot of the current keyboard state. The current state is returned as a pointer to an array. The size of this array is stored in numkeys. The array is indexed by the SDLK_* symbols (see SDLKey). A value of 1 means that the key is pressed and a value of 0 means that it is not. The pointer returned is a pointer to an internal SDL array. It will be valid for the whole lifetime of the application and should not be freed by the caller.
Note: Use SDL_PumpEvents to update the state array.
Note: This function gives you the current state after all events have been processed, so if a key or button has been pressed and released before you process events, then the pressed state will never show up in the getstate calls.
Note: This function doesn't take into account whether shift has been pressed or not.
Uint8 *keystate = SDL_GetKeyState(NULL); if ( keystate[SDLK_RETURN] ) printf("Return Key Pressed.\n"); if ( keystate[SDLK_RIGHT] && keystate[SDLK_UP] ) printf("Right and Up Keys Pressed.\n");