Wiki Page Content

SDL_GetKeyboardState

Syntax

constUint8*SDL_GetKeyboardState(int*numkeys)

Function Parameters

numkeys

if non-NULL, receives the length of the returned array

Return Value

Returns a pointer to an array of key states. A value of 1 means that the key is pressed and a value of 0 means that it is not. Indexes into this array are obtained by using SDL_Scancode values. 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.

Code Examples

constUint8*state=SDL_GetKeyboardState(NULL);if(state[SDL_SCANCODE_RETURN]){printf("<RETURN> is pressed.\n");}if(state[SDL_SCANCODE_RIGHT]&&state[SDL_SCANCODE_UP]){printf("Right and Up Keys Pressed.\n");}

Remarks

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 SDL_GetKeyboardState() calls.

Note: This function doesn't take into account whether shift has been pressed or not.