Function SDL_GetKeyboardState

pub unsafe extern "C" fn SDL_GetKeyboardState(
    numkeys: *mut i32,
) -> *const bool
Available on crate feature dep_sdl3 only.
Expand description

Get a snapshot of the current state of the keyboard.

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.

A array element with a value of true means that the key is pressed and a value of false means that it is not. Indexes into this array are obtained by using SDL_Scancode values.

Use [SDL_PumpEvents()] to update the state array.

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.

§Parameters

  • numkeys: if non-NULL, receives the length of the returned array.

§Return value

Returns a pointer to an array of key states.

§Thread safety

It is safe to call this function from any thread.

§Availability

This function is available since SDL 3.2.0.

§See also