1<HTML 2><HEAD 3><TITLE 4>SDL_GetKeyState</TITLE 5><META 6NAME="GENERATOR" 7CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ 8"><LINK 9REL="HOME" 10TITLE="SDL Library Documentation" 11HREF="index.html"><LINK 12REL="UP" 13TITLE="Event Functions." 14HREF="eventfunctions.html"><LINK 15REL="PREVIOUS" 16TITLE="SDL_EventState" 17HREF="sdleventstate.html"><LINK 18REL="NEXT" 19TITLE="SDL_GetModState" 20HREF="sdlgetmodstate.html"></HEAD 21><BODY 22CLASS="REFENTRY" 23BGCOLOR="#FFF8DC" 24TEXT="#000000" 25LINK="#0000ee" 26VLINK="#551a8b" 27ALINK="#ff0000" 28><DIV 29CLASS="NAVHEADER" 30><TABLE 31SUMMARY="Header navigation table" 32WIDTH="100%" 33BORDER="0" 34CELLPADDING="0" 35CELLSPACING="0" 36><TR 37><TH 38COLSPAN="3" 39ALIGN="center" 40>SDL Library Documentation</TH 41></TR 42><TR 43><TD 44WIDTH="10%" 45ALIGN="left" 46VALIGN="bottom" 47><A 48HREF="sdleventstate.html" 49ACCESSKEY="P" 50>Prev</A 51></TD 52><TD 53WIDTH="80%" 54ALIGN="center" 55VALIGN="bottom" 56></TD 57><TD 58WIDTH="10%" 59ALIGN="right" 60VALIGN="bottom" 61><A 62HREF="sdlgetmodstate.html" 63ACCESSKEY="N" 64>Next</A 65></TD 66></TR 67></TABLE 68><HR 69ALIGN="LEFT" 70WIDTH="100%"></DIV 71><H1 72><A 73NAME="SDLGETKEYSTATE" 74></A 75>SDL_GetKeyState</H1 76><DIV 77CLASS="REFNAMEDIV" 78><A 79NAME="AEN5686" 80></A 81><H2 82>Name</H2 83>SDL_GetKeyState -- Get a snapshot of the current keyboard state</DIV 84><DIV 85CLASS="REFSYNOPSISDIV" 86><A 87NAME="AEN5689" 88></A 89><H2 90>Synopsis</H2 91><DIV 92CLASS="FUNCSYNOPSIS" 93><A 94NAME="AEN5690" 95></A 96><P 97></P 98><PRE 99CLASS="FUNCSYNOPSISINFO" 100>#include "SDL.h"</PRE 101><P 102><CODE 103><CODE 104CLASS="FUNCDEF" 105>Uint8 *<B 106CLASS="FSFUNC" 107>SDL_GetKeyState</B 108></CODE 109>(int *numkeys);</CODE 110></P 111><P 112></P 113></DIV 114></DIV 115><DIV 116CLASS="REFSECT1" 117><A 118NAME="AEN5696" 119></A 120><H2 121>Description</H2 122><P 123>Gets a snapshot of the current keyboard state. The current state is return as a pointer to an array, the size of this array is stored in <TT 124CLASS="PARAMETER" 125><I 126>numkeys</I 127></TT 128>. The array is indexed by the <A 129HREF="sdlkey.html" 130><TT 131CLASS="LITERAL" 132>SDLK_*</TT 133></A 134> symbols. A value of 1 means the key is pressed and a value of 0 means its not. The pointer returned is a pointer to an internal SDL array and should not be freed by the caller.</P 135><DIV 136CLASS="NOTE" 137><BLOCKQUOTE 138CLASS="NOTE" 139><P 140><B 141>Note: </B 142>Use <A 143HREF="sdlpumpevents.html" 144><TT 145CLASS="FUNCTION" 146>SDL_PumpEvents</TT 147></A 148> to update the state array.</P 149></BLOCKQUOTE 150></DIV 151></DIV 152><DIV 153CLASS="REFSECT1" 154><A 155NAME="AEN5706" 156></A 157><H2 158>Example</H2 159><P 160><PRE 161CLASS="PROGRAMLISTING" 162>Uint8 *keystate = SDL_GetKeyState(NULL); 163if ( keystate[SDLK_RETURN] ) printf("Return Key Pressed.\n");</PRE 164></P 165></DIV 166><DIV 167CLASS="REFSECT1" 168><A 169NAME="AEN5710" 170></A 171><H2 172>See Also</H2 173><P 174><A 175HREF="sdlkey.html" 176><TT 177CLASS="LITERAL" 178>SDL Key Symbols</TT 179></A 180>, 181<A 182HREF="sdlpumpevents.html" 183><TT 184CLASS="FUNCTION" 185>SDL_PumpEvents</TT 186></A 187></P 188></DIV 189><DIV 190CLASS="NAVFOOTER" 191><HR 192ALIGN="LEFT" 193WIDTH="100%"><TABLE 194SUMMARY="Footer navigation table" 195WIDTH="100%" 196BORDER="0" 197CELLPADDING="0" 198CELLSPACING="0" 199><TR 200><TD 201WIDTH="33%" 202ALIGN="left" 203VALIGN="top" 204><A 205HREF="sdleventstate.html" 206ACCESSKEY="P" 207>Prev</A 208></TD 209><TD 210WIDTH="34%" 211ALIGN="center" 212VALIGN="top" 213><A 214HREF="index.html" 215ACCESSKEY="H" 216>Home</A 217></TD 218><TD 219WIDTH="33%" 220ALIGN="right" 221VALIGN="top" 222><A 223HREF="sdlgetmodstate.html" 224ACCESSKEY="N" 225>Next</A 226></TD 227></TR 228><TR 229><TD 230WIDTH="33%" 231ALIGN="left" 232VALIGN="top" 233>SDL_EventState</TD 234><TD 235WIDTH="34%" 236ALIGN="center" 237VALIGN="top" 238><A 239HREF="eventfunctions.html" 240ACCESSKEY="U" 241>Up</A 242></TD 243><TD 244WIDTH="33%" 245ALIGN="right" 246VALIGN="top" 247>SDL_GetModState</TD 248></TR 249></TABLE 250></DIV 251></BODY 252></HTML 253>